Luaの演算子2024 年の最新の入門チュートリアル。このコースでは 算術演算子,関係演算子,論理演算子,その他の演算子,演算子の優先順位, について学習できます。
オペレータは、特定の数学的または論理演算を実行するインタプリタを伝えるために使用される特殊記号、です。 Luaは次のタイプの演算子を提供します。
次の表は、一般的に算術演算子を使用するLuaの言語は、20の10、B値の値を設定して一覧表示します
演算子 | 説明 | 例 |
---|---|---|
+ | 追加 | + B出力30 |
- | 引き算 | - B出力-10 |
* | 乗算 | * B 200の出力 |
/ | 除算 | 出力2ワットB / A |
% | 残り | Bの%のA出力0 |
^ | 累乗法 | A ^ 2出力100 |
- | 負号 | -A出力V -10 |
算術演算子の適用をより完全に理解するために、以下の例を通して私たちすることができます:
a = 21 b = 10 c = a + b print("Line 1 - c 的值为 ", c ) c = a - b print("Line 2 - c 的值为 ", c ) c = a * b print("Line 3 - c 的值为 ", c ) c = a / b print("Line 4 - c 的值为 ", c ) c = a % b print("Line 5 - c 的值为 ", c ) c = a^2 print("Line 6 - c 的值为 ", c ) c = -a print("Line 7 - c 的值为 ", c )
上記プログラムの実行結果:
Line 1 - c 的值为 31 Line 2 - c 的值为 11 Line 3 - c 的值为 210 Line 4 - c 的值为 2.1 Line 5 - c 的值为 1 Line 6 - c 的值为 441 Line 7 - c 的值为 -21
次の表は、一般的に関係演算子を使用するLuaの言語は、20のB値を10の値を設定一覧表示されます
演算子 | 説明 | 例 |
---|---|---|
== | イコール、テスト2の値が等しく、同じtrueを返し、そうでない場合はfalseであるかどうか | (== B)は偽です。 |
〜= | それ以外の場合はtrueを返し、等しくはfalseを返し、2つの値が等しいかどうかを検出することが等しくありません< | (A〜= B)が真です。 |
> | 、値が左に右辺の値よりも大きい場合よりも大きくはtrue、そうでない場合はfalseを返します | (A> B)は偽です。 |
< | 右に左の値、およびがfalseを返した場合の値よりも大きく、より小さく、そうでない場合はtrueを返します | (A <B)が真です。 |
> = | 値がより大きいか、左の右に等しい場合大きいか等しい、それは本当、そうでない場合はfalseを返します。 | (A> = B)がfalseを返します。 |
<= | または、値は左の右側に以下の値である場合、trueを返し、少ないそうでない場合はfalse | (A <= B)がtrueを返します。 |
私たちは、関係演算子のアプリケーションをより完全に理解するために、以下の例を介しことができます。
a = 21 b = 10 if( a == b ) then print("Line 1 - a 等于 b" ) else print("Line 1 - a 不等于 b" ) end if( a ~= b ) then print("Line 2 - a 不等于 b" ) else print("Line 2 - a 等于 b" ) end if ( a < b ) then print("Line 3 - a 小于 b" ) else print("Line 3 - a 大于等于 b" ) end if ( a > b ) then print("Line 4 - a 大于 b" ) else print("Line 5 - a 小于等于 b" ) end -- 修改 a 和 b 的值 a = 5 b = 20 if ( a <= b ) then print("Line 5 - a 小于等于 b" ) end if ( b >= a ) then print("Line 6 - b 大于等于 a" ) end
上記プログラムの実行結果:
Line 1 - a 不等于 b Line 2 - a 不等于 b Line 3 - a 大于等于 b Line 4 - a 大于 b Line 5 - a 小于等于 b Line 6 - b 大于等于 a
次の表は、真の値を設定し、一般的な論理演算子を使用するLuaの言語の一覧を示し、B値はfalseです。
演算子 | 説明 | 例 |
---|---|---|
と | 論理AND演算子。 両方が真の動作状態である場合はtrueです。 | (AとB)が偽です。 |
または | 論理OR演算子。 すべての操作は、11状態の両側にtrueの場合はtrueです。 | (AまたはB)が真です。 |
しません | NOT論理演算子。 条件が真の場合と論理演算反して、論理否定はfalseです。 | ない(AとB)が真です。 |
私たちは、論理演算子のアプリケーションをより完全に理解するために、以下の例を介しことができます。
a = true b = true if ( a and b ) then print("a and b - 条件为 true" ) end if ( a or b ) then print("a or b - 条件为 true" ) end print("---------分割线---------" ) -- 修改 a 和 b 的值 a = false b = true if ( a and b ) then print("a and b - 条件为 true" ) else print("a and b - 条件为 false" ) end if ( not( a and b) ) then print("not( a and b) - 条件为 true" ) else print("not( a and b) - 条件为 false" ) end
上記プログラムの実行結果:
a and b - 条件为 true a or b - 条件为 true ---------分割线--------- a and b - 条件为 false not( a and b) - 条件为 true
次の表は、Luaの言語の連結演算子と計算表や文字列演算子の長さを示しています。
演算子 | 説明 | 例 |
---|---|---|
ja | 2つの文字列を連結します | 「こんにちは」、bが「世界」であるajabは、出力が「Hello World」のです。 |
# | 単項演算子は、文字列またはテーブルの長さを返します。 | #「こんにちは」は5を返します。 |
私たちは、オペレータまたは文字列の長さ計算表演算子のアプリケーションとの接続をより完全に理解するために、以下の例を介しことができます。
a = "Hello " b = "World" print("连接字符串 a 和 b ", ajab ) print("b 字符串长度 ",#b ) print("字符串 Test 长度 ",#"Test" ) print("w3cschool本教程网址长度 ",#"www.w3cschool.cc" )
上記プログラムの実行結果:
连接字符串 a 和 b Hello World b 字符串长度 5 字符串 Test 长度 4 w3cschool本教程网址长度 16
降順で:
^ not - (unary) * / + - ja < > <= >= ~= == and or
すべての外ja ^と二項演算子に加えて、接続残されています。
a+i < b/2+1 <--> (a+i) < ((b/2)+1) 5+x^2*8 <--> 5+((x^2)*8) a < y and y <= z <--> (a < y) and (y <= z) -x^2 <--> -(x^2) x^y^z <--> x^(y^z)
私たちは、Luaの言語の演算子の優先順位をより完全に理解するために、以下の例を介しことができます。
a = 20 b = 10 c = 15 d = 5 e = (a + b) * c / d;-- ( 30 * 15 ) / 5 print("(a + b) * c / d 运算值为 :",e ) e = ((a + b) * c) / d; -- (30 * 15 ) / 5 print("((a + b) * c) / d 运算值为 :",e ) e = (a + b) * (c / d);-- (30) * (15/5) print("(a + b) * (c / d) 运算值为 :",e ) e = a + (b * c) / d; -- 20 + (150/5) print("a + (b * c) / d 运算值为 :",e )
上記プログラムの実行結果:
(a + b) * c / d 运算值为 : 90.0 ((a + b) * c) / d 运算值为 : 90.0 (a + b) * (c / d) 运算值为 : 90.0 a + (b * c) / d 运算值为 : 50.0