內建運算子

Blackey Script的運算子順序大多與C語言相近,
以下我們依照優先度將運算子進行排序,排序在越前面的運算子優先權越高。
沒有特別註明的優先順序都是由左至右進行計算。
舉例來說,下面這個算式:

x = 5;
y = z = 1 * -2 + 3 * 4 – -x;

其中一元否定運算是群組2,相對於其他人運算子都還要來得高。
再來是乘法,乘法是群組3,相對於加法減法(群組4)來得高。
加減法運算完後,最後才是指定符號(群組9,由右至左進行計算)
那麼最後計算完之後y的值會等於z等於15。

群組 1

功能 運算子 範例
函式呼叫 () print(x);

群組 2,由右至左

功能 運算子 範例
一元否定運算 x = -1;

y = 1 * -3;


群組 3

功能 運算子 範例
乘法 * x = 1 * 2;
除法 / x = 6 / 2;
模數 % x = 5 % 3;

群組 4

功能 運算子 範例
加法 + x = 1 + 2;
減法 x = 1 – 2;

群組 5

功能 運算子 範例
小於 < x < 1
大於 > x > 1
小於或等於 <= x <= 1
大於或等於 >= x >= 1

群組 6

功能 運算子 範例
相等 == x == 1
不等 != x != 1

群組 7

功能 運算子 範例
邏輯AND && x && y

群組 8

功能 運算子 範例
邏輯OR || x || y

群組 9,由右至左

功能 運算子 範例
指派 = x = 1;

x = y = z = 1;


群組 10

功能 運算子 範例
逗號 , x = 1, y = 2;print(x, y);