独習JAVA

独習JAVA
Chapter 3
3.6 バックスラッシュコード
3.7 関係演算子と論理演算子
3.8 三項演算子
3.6 バックスラッシュコード
plintln()でJava言語での特殊な文字コード
コード
意味
コード
意味
\b
バックスベース
\0
null値
\n
改行
\\
バックスラッシュ
\r
キャリッジリターン
\N
8進定数(N=0~7)
\f
フォームフィールド
\NN
8進定数(N=0~7)
\t
水平タブ
\MNN
8進定数(N=0~3,N=0~7)
\"
二重引用符
\uxxxx
Unicode文字(xxxxは4行の16進
定数)
\'
一重引用符
バックスラッシュコードとしては上の表のものがあり、通常
の文字が使えるところならどこでも使える。
バックスラッシュコードの例
class rei3_6{
public static void main(String args[]){
System.out.print(”\”hello\’\n”);
System.out.println(”hello”);
}
}
出力結果
”hello’
hello
3.7 関係演算子と論理演算子
論理演算子
演算子
動作
説明
&
論理積
AND.2つの項が真のときにだけ結果が真となる論理演算
|
論理和
OR.2つの項が偽のときにだけ結果が偽となる論理演算
^
排他的論理和
Exclusive OR.2つの項が異なるときにだけ結果が真となる論理演算
!
否定
NOT.項の審議が逆になる論理演算
&&
論理積(ショートカット)
||
論理和(ショートカット)
==
等しい
!=
等しくない
高
!
> >= <
<=
論理演算子には上の表のもの
があり関係演算子と論理演算子
の優先順位は右のようになる。
== !=
&
^
|
&&
低
||
関係演算子と論理演算子の例
class rei3_7{
public static void main(String args[]){
int i = 12, h =8;
System.out.println(”i=” + i);
System.out.println(”h=” + h);
System.out.print(”i < h ” + ( i < h ));
}
}
出力結果
i=12
h=8
i<h false
3.8 三項演算子
JAVAにはif-then-elseステートメントの短縮形として働
く三項演算子があり下記のような形式になる
expr1 ? expr2 : expr3
ここではexpr1は任意の論理式となる。expr1が真なら
expr2が評価され、そうでなでればexpr3が評価さ
れる。expr2かexpr3のどちらかの値が三項演算子
の結果として返される。expr2とexpr3は同じ型でな
ければならない。
三項演算子の例
class rei3_8{
public static void main(String args[]){
System.out.println("今の時間を入力してください");
int i = Integer.parseInt(args[0]);
String str1 = "午前", str2="午後";
System.out.print("今は");
System.out.print((i < 11) ? str1 : str2);
System.out.println("です");
}
}
>java rei3_8 12
今は午後です
宿題
コマンドラインから任意の数2つを入力し2番
目に入力した数が一番目に入力した数の約
数かどうかを判別するプログラムを作成しな
さい。
解答
class Syukudai2{
public static void main(String args[]){
int i = Integer.parseInt(args[0]);
int j = Integer.parseInt(args[1]);
System.out.println("i ="+ i);
System.out.println("j ="+ j);
String str1 = "約数です。", str2="約数ではありません。";
System.out.print("jはiの");
System.out.print(((i%j) == 0) ? str1 : str2);
}
}