【问题标题】:Assert error in java在java中断言错误
【发布时间】:2013-12-25 00:06:21
【问题描述】:

这里可能是新手错误。我直接从书中复制了assert 代码,但没有抛出AssertionError。如果我输入一个低于 0 或高于 10 的值,则继续正常执行。

import java.util.Scanner;

public class AssertExample
{
    public static void main(String[] args)
    {
        Scanner scanner = new Scanner(System.in);

        System.out.print("enter a number between 0 and 10: ");
        int number = scanner.nextInt();

        assert (number >= 0 && number <= 10) : "bad number: " + number;

        System.out.println("You entered " + number);
        scanner.close();
    }
}

enter a number between 0 and 10: -3
You entered -3

【问题讨论】:

标签: java assert


【解决方案1】:

AssertionError 没有被抛出。

在运行应用程序时将-ea(启用断言)添加到 Java 命令参数中。

【讨论】:

    【解决方案2】:

    您必须在启用断言的情况下运行程序。

    java -ea[:<packagename>...|:<classname>]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-08
      • 2018-05-19
      • 2014-09-27
      • 2014-03-26
      相关资源
      最近更新 更多