Javaでアサートを使用して2つの文字列を等しいかどうか判定する方法

Javaでは、2つの文字列が等しいかどうかを判定するためにassert文を使用できます。以下に例を示します。

public class Main {
    public static void main(String[] args) {
        String str1 = "Hello";
        String str2 = "World";
        
        assert str1.equals(str2) : "两个字符串不相等";
        
        System.out.println("两个字符串相等");
    }
}

上記のコードでは、equalsメソッドを使用して2つの文字列が等しいかどうかを比較しています。assert文の条件がfalseの場合は、AssertionErrorの例外がスローされ、指定されたエラーメッセージが出力されます。条件がtrueの場合は、後続のコードの実行が継続されます。

コードを実行する際には、起動パラメーターに「-ea」オプションまたは「-enableassertions」オプションを指定してアサートステートメントのチェックを有効化する必要があります。たとえば、コマンドラインでコードを実行する場合は次のようにコマンドを入力します。

java -ea Main

assert文はデフォルトで無効になっているので、明示的にオンにする必要がある点に注意してください。本番環境では、assert文が無効になっているときにスキップされる可能性があるため、通常のプログラムロジックの判断にassert文に依存しないことが推奨されます。

bannerAds