or 演算子を使用して複数の値を持つ文字列をチェックしたいのですが、可能ですか?
like if(str.equals("A" || "B" || "C")){
//do this
}
else if(str.equals("D" || "E" || "F")){
//do that
}
|| コンパイル中にエラーが発生します。文字列では使用できません
or 演算子を使用して複数の値を持つ文字列をチェックしたいのですが、可能ですか?
like if(str.equals("A" || "B" || "C")){
//do this
}
else if(str.equals("D" || "E" || "F")){
//do that
}
|| コンパイル中にエラーが発生します。文字列では使用できません
if(str.equals("A") || str.equals("B") || str.equals("C")){ .... }
条件を分ける必要があります。
この場合は必要ありませんOR
。同じ条件を次のように記述できます。
if (Arrays.asList("A", "B", "C").contains(str)) {
...
}
このテストは、テスト文字列str
が の呼び出しで指定されたリストに含まれている場合に成功します。このリストはasList
、便利なように可変数のパラメーターを受け取ります。
switch
Java 7 でa を使用することもできます。
switch (str) {
case "A":
case "B":
case "C":
// do this
break;
case "D":
case "E":
case "F":
// do that
break;
}
比較したい文字列が多数ある場合、これは読みやすいかもしれません。switch
リファレンスについては、ステートメントチュートリアルの「switch ステートメントでの文字列の使用」セクションを参照してください。