算術演算子
+ 足し算
- 引き算
* 掛け算
/ 割り算
% あまり(偶数かどうかの判定に使われる⇒ number % 2 == 0)
複合代入演算子
| 演算子 | 意味 | 例 |
|---|---|---|
+= |
加算して代入 | x += 3; |
-= |
減算して代入 | x -= 3; |
*= |
乗算して代入 | x *= 3; |
/= |
除算して代入 | x /= 3; |
%= |
剰余して代入 | x %= 3; |
インクリメントとデクリメント
int count = 5;
count++;
System.out.println(count); // 6
count--;
System.out.println(count); // 5
比較演算子
| 演算子 | 意味 | 例 |
|---|---|---|
== |
等しい | a == b |
!= |
等しくない | a != b |
> |
より大きい | a > b |
< |
より小さい | a < b |
>= |
以上 | a >= b |
<= |
以下 | a <= b |
論理演算子
| 演算子 | 意味 | 例 |
|---|---|---|
&& |
AND(かつ) | age >= 20 && age < 65 |
|| |
OR(または) | age < 18 || age >= 65 |
! |
NOT(否定) | !isStudent |
自動型変換(暗黙的変換)
異なるデータ型同士で演算を行う場合、Javaが安全に変換できると判断したときに、自動で型を変換してくれる仕組み
int と doubleだったら、doubleに変換される。(double は int より大きな範囲を扱えるから)
明示的な型変換(キャスト)
double height = 170.5;
int heightInt = height;
↓
コンパイルエラーになる。
170.5
↓
170
となり小数部分の0.5が失われる可能性があるから
Javaは「本当に小数を捨てていいの?」と確認したいので、自動では変換しません。
そこで
キャスト演算子を使う
double height = 170.5;
int heightInt = (int) height;
小数部分が切り捨てられる
String と数値の変換
| 変換内容 | メソッド | 例 |
|---|---|---|
| String → int | Integer.parseInt() |
int age = Integer.parseInt(ageText); |
| String → double | Double.parseDouble() |
double height = Double.parseDouble(heightText); |
| int → String | String.valueOf() |
String ageText = String.valueOf(age); |
| double → String | String.valueOf() |
String heightText = String.valueOf(height); |
例
String priceText = "100";
int price = Integer.parseInt(priceText);
System.out.println(price + 50); // 150(数値として計算される)