Java オペレーター
Java オペレーター
このチュートリアルでは、Java のさまざまなタイプの演算子、その構文、および例を使用してそれらを使用する方法について学習します。
演算子は、変数と値に対して操作を実行する記号です。例:+
*
は加算に使用される演算子です。 乗算に使用される演算子でもあります。
Java の演算子は、次の 5 つのタイプに分類できます。
<オール>1. Java 算術演算子
算術演算子は、変数とデータに対して算術演算を実行するために使用されます。たとえば、
a + b;
ここでは、+
演算子は、2 つの変数 a を追加するために使用されます と b .同様に、Java には他にもさまざまな算術演算子があります。
演算子 | 作戦 |
+ | 追加 |
- | 引き算 |
* | 掛け算 |
/ | 部門 |
% | モジュロ演算 (除算後の剰余) |
例 1:算術演算子
class Main {
public static void main(String[] args) {
// declare variables
int a = 12, b = 5;
// addition operator
System.out.println("a + b = " + (a + b));
// subtraction operator
System.out.println("a - b = " + (a - b));
// multiplication operator
System.out.println("a * b = " + (a * b));
// division operator
System.out.println("a / b = " + (a / b));
// modulo operator
System.out.println("a % b = " + (a % b));
}
}
出力
a + b = 17 a - b = 7 a * b = 60 a / b = 2 a % b = 2
上記の例では、+
を使用しています。 、 -
、および *
加算、減算、および乗算演算を計算する演算子。
/部門オペレーター
a / b
の操作に注意してください 私たちのプログラムで。 /
operator は除算演算子です。
除算演算子を 2 つの整数で使用すると、結果の商も整数になります。また、オペランドの 1 つが浮動小数点数の場合、結果も浮動小数点数になります。
In Java,
(9 / 2) is 4
(9.0 / 2) is 4.5
(9 / 2.0) is 4.5
(9.0 / 2.0) is 4.5
%モジュロ演算子
モジュロ演算子 %
剰余を計算します。 a = 7
のとき b = 4
で割ります 、残りは 3 です .
注意 :%
演算子は主に整数で使用されます。
2. Java代入演算子
代入演算子は、Java で値を変数に代入するために使用されます。たとえば、
int age;
age = 5;
ここでは、=
代入演算子です。右側の値を左側の変数に代入します。つまり、5 変数 age に割り当てられます .
Java で使用できる代入演算子をいくつか見てみましょう。
演算子 | 例 | 同等 |
---|---|---|
= | a = b; | a = b; |
+= | a += b; | a = a + b; |
-= | a -= b; | a = a - b; |
*= | a *= b; | a = a * b; |
/= | a /= b; | a = a / b; |
%= | a %= b; | a = a % b; |
例 2:代入演算子
class Main {
public static void main(String[] args) {
// create variables
int a = 4;
int var;
// assign value using =
var = a;
System.out.println("var using =: " + var);
// assign value using =+
var += a;
System.out.println("var using +=: " + var);
// assign value using =*
var *= a;
System.out.println("var using *=: " + var);
}
}
出力
var using =: 4 var using +=: 8 var using *=: 32
3. Java 関係演算子
関係演算子は、2 つのオペランド間の関係をチェックするために使用されます。たとえば、
// check if a is less than b
a < b;
ここでは、<
operator は関係演算子です。 a かどうかをチェックします b 未満です
true
のいずれかを返します または false
.
演算子 | 説明 | 例 |
---|---|---|
== | 等しい | 3 == 5 false を返します |
!= | 等しくない | 3 != 5 true を返します |
> | より大きい | 3 > 5 false を返します |
< | 未満 | 3 < 5 true を返します |
>= | 以上 | 3 >= 5 false を返します |
<= | 以下 | 3 <= 5 true を返します |
例 3:関係演算子
class Main {
public static void main(String[] args) {
// create variables
int a = 7, b = 11;
// value of a and b
System.out.println("a is " + a + " and b is " + b);
// == operator
System.out.println(a == b); // false
// != operator
System.out.println(a != b); // true
// > operator
System.out.println(a > b); // false
// < operator
System.out.println(a < b); // true
// >= operator
System.out.println(a >= b); // false
// <= operator
System.out.println(a <= b); // true
}
}
注意 :関係演算子は、意思決定とループで使用されます。
4. Java 論理演算子
論理演算子は、式が true
かどうかをチェックするために使用されます または false
.それらは意思決定に使用されます。
演算子 | 例 | 意味 |
---|---|---|
&& (論理積) | 式1 && 式2 | true 両方の expression1 の場合のみ および expression2 true です |
|| (論理和) | 式1 || 式2 | true expression1 のいずれかの場合 または expression2 true です |
! (論理否定) | ! 式 | true if 式 false です 逆もまた然り |
例 4:論理演算子
class Main {
public static void main(String[] args) {
// && operator
System.out.println((5 > 3) && (8 > 5)); // true
System.out.println((5 > 3) && (8 < 5)); // false
// || operator
System.out.println((5 < 3) || (8 > 5)); // true
System.out.println((5 > 3) || (8 < 5)); // true
System.out.println((5 < 3) || (8 < 5)); // false
// ! operator
System.out.println(!(5 == 3)); // true
System.out.println(!(5 > 3)); // false
}
}
プログラムの働き
(5 > 3) && (8 > 5)
true
を返します 両方の(5 > 3)
のため と(8 > 5)
true
です .(5 > 3) && (8 < 5)
false
を返します なぜなら式(8 < 5)
false
です .(5 < 3) || (8 > 5)
true
を返します なぜなら式(8 > 5)
true
です .(5 > 3) && (8 > 5)
true
を返します 式(5 > 3)
のためtrue
です .(5 > 3) && (8 > 5)
false
を返します 両方の(5 < 3)
のため と(8 < 5)
false
です .!(5 == 3)
5 == 3
であるため true を返しますfalse
です .!(5 > 3)
5 > 3
であるため false を返しますtrue
です .
5. Java 単項演算子
単項演算子は、1 つのオペランドのみで使用されます。例:++
変数の値を 1 増やす単項演算子です .つまり、++5
6 を返します .
さまざまなタイプの単項演算子は次のとおりです:
演算子 | 意味 |
---|---|
+ | 単項プラス :使用しなくても数値は正であるため、使用する必要はありません |
- | 単項マイナス :式の符号を反転します |
++ | インクリメント演算子 :値を 1 ずつ増やします |
-- | 減分演算子 :値を 1 減らします |
! | 論理補数演算子 :ブール値の反転 |
増分および減分演算子
Java にはインクリメント演算子とデクリメント演算子も用意されています:++
と --
それぞれ。 ++
オペランドの値を 1 増やします 、 --
の間 1減らす .たとえば、
int num = 5;
// increase num by 1
++num;
ここで、num の値 6に増加 5 の初期値から .
例 5:インクリメントおよびデクリメント演算子
class Main {
public static void main(String[] args) {
// declare variables
int a = 12, b = 12;
int result1, result2;
// original value
System.out.println("Value of a: " + a);
// increment operator
result1 = ++a;
System.out.println("After increment: " + result1);
System.out.println("Value of b: " + b);
// decrement operator
result2 = --b;
System.out.println("After decrement: " + result2);
}
}
出力
Value of a: 12 After increment: 13 Value of b: 12 After decrement: 11
上記のプログラムでは、++ および -- 演算子を プレフィックス (++a, --b) として使用しています。 .これらの演算子を 後置 (a++、b++) として使用することもできます .
これらの演算子が接頭辞として使用される場合と接尾辞として使用される場合では、わずかな違いがあります。
これらの演算子の詳細については、増分演算子と減分演算子を参照してください。
6. Java ビット演算子
Java のビット演算子は、個々のビットに対して操作を実行するために使用されます。たとえば、
Bitwise complement Operation of 35
35 = 00100011 (In Binary)
~ 00100011
________
11011100 = 220 (In decimal)
ここでは、~
ビット演算子です。各ビットの値を反転します (0 1 に と 1 0まで ).
Java に存在するさまざまなビット演算子は次のとおりです。
演算子 | 説明 |
---|---|
~ | ビット単位の補数 |
<< | 左シフト |
>> | 右シフト |
>>> | 符号なし右シフト |
& | ビットごとの AND |
^ | ビットごとの排他的 OR |
これらの演算子は、通常 Java では使用されません。詳細については、Java Bitwise and Bit Shift Operators にアクセスしてください。
その他のオペレーター
これらの演算子に加えて、Java には他の追加の演算子があります。
オペレータの Java インスタンス
instanceof
演算子は、オブジェクトが特定のクラスのインスタンスであるかどうかをチェックします。たとえば、
class Main {
public static void main(String[] args) {
String str = "Programiz";
boolean result;
// checks if str is an instance of
// the String class
result = str instanceof String;
System.out.println("Is str an object of String? " + result);
}
}
出力
Is str an object of String? true
ここで、str String
のインスタンスです クラス。したがって、instanceof
演算子は true
を返します .詳細については、Java instanceof をご覧ください。
Java 三項演算子
三項演算子 (条件演算子) は、if-then-else
の省略形です。 声明。たとえば、
variable = Expression ? expression1 : expression2
仕組みは次のとおりです。
Expression
の場合true
です 、expression1
変数に割り当てられます .Expression
の場合false
です 、expression2
変数に割り当てられます .
三項演算子の例を見てみましょう。
class Java {
public static void main(String[] args) {
int februaryDays = 29;
String result;
// ternary operator
result = (februaryDays == 28) ? "Not a leap year" : "Leap year";
System.out.println(result);
}
}
出力
Leap year
上記の例では、三項演算子を使用して、その年がうるう年かどうかを確認しています。詳細については、Java 三項演算子をご覧ください。
Java オペレーターについて理解したところで、今度はオペレーターが評価される順序について理解しましょう。詳細については、Java Operator Precedence をご覧ください。
Java