Skip to content

Latest commit

 

History

History
116 lines (93 loc) · 1.82 KB

operator.md

File metadata and controls

116 lines (93 loc) · 1.82 KB

SEL operators

SEL supports most of Java operators, including

  • ?:
x = 2 > 1 ? 10 : -10;       // x's value is number 10.
  • >
x = 2 > 1;                  // x's value is boolean true.
  • <
x = 2 < 1;                  // x's value is boolean false.
  • !
x = !true;                  // x's value is boolean false.
  • ==
x = 2 == 1;                 // x's value is boolean false.
  • <=
x = 2 <= 1;                 // x's value is boolean false.
  • >=
x = 2 >= 1;                 // x's value is boolean true.
  • !=
x = 2 != 1;                 // x's value is boolean true.
  • ||
x = true || false;          // x's value is boolean true.
  • &&
x = true && false;          // x's value is boolean false.
  • +
x = 1 + 2;                  // x's value is number 3.
  • -
x = 1 - 2;                  // x's value is number -1.
  • *
x = 1 * 2;                  // x's value is number 2.
  • /
x = 1 / 2;                  // x's value is number 0.
x = 1.0 / 2;                // x's value is number 0.5.
  • %
x = 1 % 2;                  // x's value is number 1.
  • +=
x = 1;
x += 2;                     // x's value is number 3.
  • -=
x = 1;
x -= 2;                     // x's value is number -1.
  • *=
x = 1;
x *= 2;                     // x's value is number 2.
  • /=
x = 1;
x /= 2;                     // x's value is number 0.
  • %=
x = 1;
x %= 2;                     // x's value is number 1.

Notes

  • SEL does not do implicit conversion, e.g.

    • not support String multiply another number
  • Comparison between String should call String method compareTo

    • e.g. "hello'.compareTo('world') > 0