Java关键字之Assert
参考博客来自:Assert断言语法与触发
一.assert关键字是什么?
在C和C++语言中都有assert关键,表示断言。
在Java中,同样也有assert关键字,表示断言,用法和含义都差不多,与之同理的就是if(boolean)判断,如果boolean为false则抛出异常。
在Java中,assert关键字是从JAVA SE 1.4 引入的,为了避免和老版本的Java代码中使用了assert关键字导致错误,Java在执行的时候默认是不启动断言检查的(这个时候,所有的断言语句都 将忽略!),如果要开启断言检查,则需要用开关-enableassertions或-ea来开启。
二.assert的语法
assert关键字语法很简单,有两种用法:
1、assert <boolean表达式>
如果<boolean表达式>为true,则程序继续执行。
如果为false,则程序抛出AssertionError,并终止执行。
2、assert <boolean表达式> : <错误信息表达式>
如果<boolean表达式>为true,则程序继续执行。
如果为false,则程序抛出java.lang.AssertionError,并输入<错误信息表达式>。
三.如何打开断言,使其生效
1.IDEA中默认assert(断言)是关闭,开启方式如下:
简单来说:就是设置一下jvm
的参数,参数是-enableassertions
或者-ea
(推荐)。
在IDEA的Run==》Edit Configurations 选项卡中:
四. 代码调试生效
1、assert <boolean表达式> 触发assert
public static void main(String[] args) {Integer q = 128;Integer n = 128;System.out.println("q ==n 结果: " + (q==n) );//只有结果为true时,程序才继续执行assert (q == n);System.out.println("程序继续执行了");}
运行结果(前提必须开启断言)如下:
2、assert <boolean表达式> 不触发assert
public static void main(String[] args) {Integer q = 127;Integer n = 127;System.out.println("q ==n 结果: " + (q==n) );//只有结果为true时,程序才继续执行assert (q == n);System.out.println("程序继续执行了");}
运行结果如下:
3、assert <boolean表达式> : <错误信息表达式> 触发assert异常
public static void main(String[] args) {Integer q = 128;Integer n = 128;System.out.println("q ==n 结果: " + (q==n) );//只有结果为true时,程序才继续执行assert (q == n):"超出Integer自动拆装箱范围";System.out.println("程序继续执行了");}
运行结果如下:
4、assert <boolean表达式> : <错误信息表达式> 关闭断言,依然触发assert异常
public static void main(String[] args) {Integer q = 128;Integer n = 128;System.out.println("q ==n 结果: " + (q==n) );//只有结果为true时,程序才继续执行assert (q == n):"Integer自动拆装箱超出范围";System.out.println("程序继续执行了");}
在IDEA的jvm参数中去掉-ea,运行结果如下
Java关键字之Assert相关推荐
- java中的assert
Java陷阱之assert关键字 一.概述 在C和C++语言中都有assert关键,表示断言. 在Java中,同样也有assert关键字,表示断言,用法和含义都差不多. 二.语法 在Java中,ass ...
- Java断言(assert)
一.概述 在C和C++语言中都有assert关键,表示断言. 在Java中,同样也有assert关键字,表示断言,用法和含义都差不多. 二.语法 在Java中,assert关键字是从JAVA SE ...
- Java关键字(53个关键字)
Java关键字(53个关键字) abstract default goto* null switch boolean do if package nchronzed break ...
- 10.java 关键字与保留字
Java 关键字列表 (依字母排序 共51组)所有的关键字都是小写. 在IDE中都会显示不同的颜色: abstract, assert, boolean, break, byte, case, cat ...
- Java关键字与保留字说明及使用
Java关键字与保留字说明及使用 abstract boolean break byte case catch char class continue default do double else e ...
- java关键字_Java关键字
java关键字 Java keywords are the reserved words that are used by the Java compiler. These keywords have ...
- Java断言(assert)的介绍和使用
Java断言(assert)的介绍和使用 在Java编程中,断言(assert)是一种有用的工具,用于在代码中进行条件检查和调试.通过使用断言,我们可以验证程序的逻辑和假设,确保程序在运行时达到预期的 ...
- java 关键字 保留字_什么是Java关键字和保留字?
关键字是预先定义的,在Java编程语言中具有独特的含义和功能.这些关键字也称为保留关键字,这意味着它们不能用作变量名.类.方法或任何其他标识符.Java中有57个保留关键字.同时 关键字是预先定义的, ...
- 本固枝荣 —— Java关键字之分类
说明 Java关键字是事先定义的,具有特殊含义的标识符,也可以理解为是编译器与程序员之间的一种约定,程序员利用关键字来告诉编译器其声明的变量类型.类.方法特性等信息.如果对Java中的关键字进行分类的 ...
最新文章
- 【跟着我们学Golang】之异常处理
- 惠普z840工作站linux,HP Z840 工作站,高清非编工作站
- 零拷贝和java NIO
- React Native实现一个带筛选功能的搜房列表(2)
- JSP 插入到数据库的数据出现 “SQLServerException: 将截断字符串或二进制数据” 错误解决方案
- CGCKD2021大会报告整理(1)--宽度学习
- Ubuntu14.04安装ROS
- C++:编译实验之递归下降分析器
- 创建数据库、表以及索引
- C++模板实现,支持多维,安全数组的完整代码
- windows 网络编程大汇总
- 史上最全的Java从入门到精通,播放最多的Java视频教程
- php 死链查询,网站最新死链查询和处理方法
- POS机31个基础知识你了解多少?
- BZOJ5336:[TJOI2018]游园会——题解
- 统计检测(statistical tests)
- 4.证券投资基金的监管
- 对话系统简介与OPPO小布助手的工程实践
- 6.4输入系统-模拟输入系统驱动
- 完美解决安装Eclipse2020-3报错问题及正确安装,冲冲冲!!!