Contents
【Java】 if文でin句はないので代替するには「containsメソッド」や「論理演算子」が妥当と思う件
SQLでよく使用されるin句(指定した複数の値に合致するデータを抽出すること)
Javaでも指定した複数の値に合致するデータがある場合に処理をしたい。
そういった場合は、どのようにすればよいかいくつか考えてみました。
複数条件のいずれかに該当する場合は論理演算子の「||」を使用すればよい
たとえば、複数の条件のいずれかに該当するというケースであれば「||」を使用すれば良いです。
「||」はいずれかに合致する場合、trueとなるので、in句(指定した複数の値に合致するデータを抽出すること)の条件に近いのではと思います。
// いずれかに該当する場合、trueとなる int i = 0; if(i == 1 || i == 2 || i == 0) { System.out.println("条件いずれかに合致"); } else { System.out.println("不一致"); } // 実行結果 条件いずれかに合致 // 実行結果(i=3)とした場合 不一致
値を含むという場合で条件判定をする場合は「containsメソッド」を使用すればよい
文字列の中で、特定の文字を含むという場合やListの中で、対象の値を持つという条件判定であれば「containsメソッド」を使用すればよいです。
//特定の文字列を含む String moji = "testmoji"; if (moji.contains("mo")) { System.out.println("mo含む"); } // 実行結果 mo含む //特定の値を含む List<String> list = new ArrayList <>(); list.add("テスト"); list.add("文字"); if (list.contains("文字")) { System.out.println("文字含む"); } // 実行結果 文字含む
Javaの条件分岐について次の記事にまとめてあります。
コメントを残す