如何在Java中实现断言?
时间:2020-02-23 14:33:56  来源:igfitidea点击:
通常,需要验证我们程序中存在的条件。
Java中的assert关键字允许用户验证或者测试程序过程中所做的假设。
本文将向我们介绍Java断言。
在Java中声明断言
assert语句与布尔表达式一起使用,可以声明如下:
assert expression;
声明断言的另一种方法如下:
assert expression1 : expression2;
例子
import java.util.Scanner;
public class Test
{
public static void main( String args[] )
{
int value = 18;
assert value >= 20 : " Eligible";
System.out.println("Value: "+value);
}
}
启用断言后的输出如下:
线程" main"中的异常java.lang.AssertionError:合格
启用断言
必须注意,默认情况下断言是禁用的。
启用断言语句的语法如下:
java –ea Test
启用断言的另一种方法:
java –enableassertions Test
继续,让我们看看如何禁用断言,
禁用断言
可以按以下方式禁用断言语句:
java –da Test
启用断言的另一种方法:
java -disableassertions Test
使用断言的原因
用户可能要使用断言的原因有多种:
- 确保注释中定义的假设正确。 
- 为了确保不触及开关shell。 
- 检查对象的状态。 
其中可以使用断言?
其中使用断言?
- 方法开始时的条件情况和条件。 
- 私有方法的论点。 
其中不使用断言?
- 不应使用断言来检查用户提供的公共方法中的参数。 
- 断言不应在命令行参数上使用。 
- 不应使用断言来替换错误消息。 
Java断言示例程序
import java.util.Scanner;
public class Test
{
public static void main( String args[] )
{
Scanner scanner = new Scanner( System.in );
System.out.print("Enter the ID ");
int value = scanner.nextInt();
assert value>=15:" Invalid";
System.out.println("Value "+value);
}
}
线程" main"中的异常java.lang.AssertionError:无效
为了确保在程序执行过程中所做的假设是正确的,断言被证明是一个重要的关键字。

