16

Java switch case ステートメントで大文字と小文字を区別しない一致を実行する方法があるかどうか疑問に思っていました。デフォルトの実装では大文字と小文字が区別されます。以下の例を参照してください。

public class SwitchCaseTest {

    /**
     * @param args
     */
     public static void main(String[] args) {

        switch ("UPPER") {
            case  "upper" :
                System.out.println("true");
                break;

            default:
                System.out.println("false");
                break;
        }
    }
}

したがって、上記のステートメントはfalse出力として返されます。そして、大文字と小文字を区別しない一致で機能するようにしようString.equalsIgnoreCase()としています。文字列リテラルの両方を小文字に変換してから比較しようとしました。しかし、そうすることができませんでした。

4

5 に答える 5

0

試す

switch ("UPPER".toUpperCase()) {
    case  "UPPER" :
于 2013-10-04T12:10:50.423 に答える
0

case 式を使用して小文字か大文字かを確認する必要がないようにするには、次を使用することをお勧めします。

String value = String.valueOf(userChoice).toUpperCase();

これは、switch case で評価を行う前に、小文字を大文字に変換するのに役立ちます。

于 2019-04-03T02:33:55.077 に答える