15

assert ステートメントで結果が得られないのはなぜですか? 最初の assert ステートメントは失敗すると思いますが、Eclipse に何も表示されません。

このプログラムを実行するためにEclipseを使用しています。

package java.first;

public class test {
  public static void main(String[] args) throws Exception {
    String s = "test1";
    assert (s == "test");
    s = "test";
    assert (s == "test");
  }
} 
4

5 に答える 5

30

-eaJVM オプションで (アサーションを有効にする)を設定する必要があります。


無関係ですが、ほとんどの場合string1.equals(string2)==.

于 2013-07-29T17:24:36.360 に答える
12

-ea引数(の略)でアサーションを有効にする必要があります-enableassertions

エクリプスでは:

  • プロジェクトを右クリックし、「Run As」「Run Configurations...」
  • 「引数」タブを選択します
  • 「 VM引数」フィールド-eaに入れます。
  • 「申し込む」を選択

これで、実行するとAssertionError.

于 2013-07-29T17:24:28.233 に答える
5

デフォルトでは、Java はアサーションを無効にします。プログラムを実行するときに -ea オプションを使用して、それらが機能するように有効にする必要があります。

于 2013-07-29T17:24:36.443 に答える
4

実行時にアサーション チェックをオンにする必要があります。Java の Oracle ドキュメントには、次のように記載されています。

さまざまな粒度でアサーションを有効にするには、-enableassertions または -ea スイッチを使用します。さまざまな粒度でアサーションを無効にするには、-disableassertions または -da スイッチを使用します。

詳細については、Oracle の Web サイト ( http://docs.oracle.com/javase/1.4.2/docs/guide/lang/assert.html#enable-disable ) を参照してください。

Eclipse 内で実行されるプログラムの実行時オプションを変更するには、プログラムを実行する Eclipse のパラメーターを変更する必要があります。これを行う方法は、Eclipse のバージョンによって異なりますが、Eclipse Europa での動作は次のとおりです。

  • 実行ダイアログを開きます (これは「実行」メニューの下のオプションです)。
  • 「(x)= Arguments」タブをクリックします。
  • 「VM 引数」のフィールドに、-ea と入力してアサーションを有効にします。
  • 「適用」ボタンをクリックします。

http://www.coderanch.com/t/416987/vc/enable-Assertions-eclipseから「借りた」と答える

于 2013-07-29T17:26:44.193 に答える
1

-ea 引数を使用して有効にする必要があります。

于 2013-07-29T17:25:26.243 に答える