1. ホーム
  2. スクリプト・コラム
  3. ルア

Luaの基本 - 演算子の使用例

2022-01-05 14:43:16

ご存知のように、C、C++、pythonなどの言語には演算子があります。LuaもC言語で書かれているので例外ではありません!Luaの演算子は、C++の演算子とは違い、C++で書かれた演算子です。

Luaの演算子は、大きく分けて、算術演算子、関係演算子、論理演算子、特殊演算子に分かれます。

1. 算術演算子は +(加算)-(減算) *(乗算)/(除算) %(モジュロ) ^(べき乗) -(符号)。

例として、test6.luaを見てみましょう。

num1 = 4 ;
num2 = 2 ;
print(num1+num2);
print(num1-num2);
print(num1*num2);
print(num1/num2);
print(num1%num2);
print(num1^num2);
print(-num1);

ランの説明 lua test6.lua

結果

6
2
8
2.0
0
16.0
-4

2. 関係演算子は、==(等しい) ~=(等しくない) >(より大きい) <(より小さい) >=(より大きい等) <=(より小さい等)です。

比較が成立する場合はtrueを、成立しない場合はfalseを返します。

例として、test6.luaを見てみましょう。

num = 1 ;
num1 = 1;
num2 = 2;
num3 = 3; 
num4 = 4;
num5 = 5;
num6 = 6;
ret = num1 == num2 ;
print(ret);
ret = num1 ~= num2 ; 
print(ret);
ret = num3 > num2 ;
print(ret);
ret = num4 < num3 ; 
print(ret);
ret = num5 >= num6 ;
print(ret);
ret = num1 <= num ;
print(ret);

ランを説明する。 lua test6.lua

結果を教えてください。

虚偽


虚偽
虚偽

3. 論理演算子は、and(論理アンド) or(論理オア) not(論理ノー)

AとBがあるとします。AとBがあれば、trueはAを、falseはBを返します。 

AとBがあるとする。AまたはBの場合、trueはAを返し、falseはBを返す

AとBがあり、Aでない場合、trueはtrueを、falseはfalseを返すとする。

例として、test6.luaを見てみましょう。

num1 = 100 ;
num2 = 200 ;
num3 = 0 ;
ret = num1 and num3 ; 
print(ret);
ret = num1 or num3 ; 
print(ret);
ret = not num1 ;
print(ret);
ret = not(num1 and num2);
print(ret);

ランを説明する。 lua test6.lua

結果を教えてください。

0
100
虚偽
虚偽

4. 特殊演算子

 ... は2つの文字列を連結することを意味します # は文字列または表の長さを返すことを意味します (ここでの長さには '\0' が含まれないことに注意してください)

例:test6.lua

-- Define two strings
str1 = "Hello";
str2 = "World";
--join the two strings
ret = str1..str2;
print(ret);
--get the length of the concatenated string
str_length = #ret ;
print(str_length);

ランの説明 lua test6.lua

結果

ハローワールド
10

もちろん、luaの演算子には優先順位があり、優先順位の高いものから順に

^ not -(負符号) * / + - . < > <= >= ~= == and or

まとめる

この記事の内容が、あなたの勉強や仕事に少しでも参考となる学習価値があれば幸いです。もっと詳しく知りたい方は、以下のリンク先をご覧ください。