演算子は、変数や値に対して操作を実行するために使用されます。
数学の加減乗除などの演算には「+、ー、×、÷」という記号が使われますが、プログラミングにおいてはさらに多くの記号が使われ、その用途も様々です。
それぞれの演算子とその用途を理解して使えるようにしていきましょう。
まず以下の例を見て見ましょう。
例:
int × = 100 + 50
値 | 演算子 | 値 |
100 | + | 50 |
package JSample; public class JSample3_1{ public static void main(String[] args){ int sum1 = 100 + 50; // 150 (100 + 50) int sum2 = sum1 + 250; // 400 (150 + 250) int sum3 = sum2 + sum2; // 800 (400 + 400) System.out.println(sum1); System.out.println(sum2); System.out.println(sum3); } }
算術演算子は、一般的な数学演算を実行するために使用されます。
演算子 | 意味 | 例 |
---|---|---|
+ | 加 | a+b |
- | 減 | a-b |
** | 乗 | a*b |
/ | 除 | a/b |
++(インクリメント) | (値が代入されている変数に)値を1だけ増やす | a++/++a |
--(デクリメント) | (値が代入されている変数に)値を1だけ減らす | b--/--b |
例1:4 % → 4 例2:5 % 5→ 0 例3:6 % 5→ 1
例 4: int sum ; int x ; x = 5 ; sum = ++ x ;
例 5: int z ; int y ; y = 5 ; wa = y++ ;
代入演算子は、変数に値を代入するために使用されます。
演算子 | 意味 | 代入演算子での同等な式 |
---|---|---|
a=b | 変数aにbを代入する | |
a++ | 変数aの値を、bだけ増やす | a = a + b |
a-=b | 変数aの値を、bだけ減らす | a = a - b |
a*=b | 数aの値を、b倍した値にする | a = a * b |
a/=b | 変数aの値を、bで割った値にする | a=a/b |
a%=b | 変数aの値を、bで割った余りの値にする | a=a%b |
int x =10; x += 5;
関係演算子は、2つの値を比較するために使用されます。
この関係演算子は、次紹介する論理演算子とともに条件を書くための演算子として用いられる。
この演算子を使って条件を書くことは、「第4章条件分岐」、「第5章繰り返し」などの基礎となる考え方なので理解しておきましょう。
演算子 | 使用例 | 意味 |
---|---|---|
== | a== b | aとbは等しい |
!= | a != b | aとbは等しくない |
< | a < b | aはbより大きい(超える) |
> | a > b | aはbより小さい(未満) |
>= | a >= b | aはbより大きいか等しい(以上) |
<= | a <= b | aはbよりも小さいか等しい(以下) |
a>0 ・・・ aは正の数 b>=10 ・・・ bは10以上 c>d+5 ・・・ cはd+5よりも大きい e+f>=10 ・・・ e+fは10以上関係演算子は例の1行目・2行目のように、変数と値を比較するために使われます。
論理演算子は、2つ以上の関係式を組みあせて、複雑な条件を作成するために使います。
演算子 | 使用例 | 意味 |
---|---|---|
&& | A && B | かつ(AND演算) A,Bの関係式が両方ともTrueの時のみtrueになる |
|| | A || B | または(OR演算) A,Bのどちらか一方または両方がtrueならtrueになる |
^ | A ^ B | 片方だけtrue(XOR演算) 片方がtrueでもう片方がfalseならtrueになる |
! | A ! B | 〜でない(NOT演算) trueならfalseに、falseならtrueに反転する |
int x =30 int y =100 boolean b1 = x>=40 && y>=90;・・・x 40以上かつ y 90以上 boolean b2 = x>=40 || y>=90; ・・・x 40以上または y 90以上 boolean b3 = x>=40 ^ y>=90; ・・・x 40以上、 y 90以上の一方だけtrue boolean b4 = !(x>=40); ・・・x 40以上ではない例の4行目から7行目、青字の部分が実際に論理演算子を使った関係式です。
問題[JEx3_1.java]
構文の◯を入れ替えて、コードを完成してください。
package JSample public class JEx3_1{ public static void main(String[]args){ int a = 5; int b = 8; ◯ + ◯; System,out,println(a); ◯ -= ◯ ; System,out,println(b); System,out,ptintln(a+◯); a = a + ◯; System,out,println(a); } }実行結果
package JSample public class JEx3_2{ public static void main(string[] args){ //ここから処理を書いていきます } }実行結果