【2023,学点儿新Java 您所在的位置:网站首页 java的关键词字 【2023,学点儿新Java

【2023,学点儿新Java

2023-07-11 14:31| 来源: 网络整理| 查看: 265

前情回顾:

【2023,学点儿新Java-25】如何解决浮点计算存在误差:strictfp | 如何保护敏感信息,提高程序的可靠性和安全性:transient | 附:Java异常处理关键字介绍【2023,学点儿新Java-24】abstract修饰类、方法 | synchronized同步锁 | volatile修饰成员变量 | 如何保证变量在多线程中的可见性?| 如何保证线程安全?【2023,学点儿新Java-23】初步了解Java中的修饰符:static及其作用、native特性、final的理解…更多Java系列文章,可参阅博主主页哦!

  我们抬头便看到星光,星星却穿越了万年.

 

🎯作者主页: 追光者♂🔥

        

🌸个人简介:   💖[1] 计算机专业硕士研究生💖   🌟[2] 2022年度博客之星人工智能领域TOP4🌟   🏅[3] 阿里云社区特邀专家博主🏅   🏆[4] CSDN-人工智能领域优质创作者🏆   📝[5] 预期2023年10月份 · 准CSDN博客专家📝    

无限进步,一起追光!!!

        

🍎感谢大家 点赞👍  收藏⭐   留言📝!!!

        

🌿在此前的系列Java文章中,我们已经基本了解了Java中的一些关键字,今天让我们继续了解一些Java关键字吧!本篇暂时先介绍assert——断言,来看一下assert关键字在Java中究竟起了怎样的作用。为了便于大家理解,也附上了简明的实例。

🕝目录 🍄assert:断言🥝1.1 基本描述,简明语法格式🥝1.2 进一步介绍

🍄assert:断言 🥝1.1 基本描述,简明语法格式

 

如果它断言的表达式为false,将会抛出java.lang.AssertionError对象。

语法格式:

assert 布尔表达式; 或 assert 布尔表达式 : "错误信息";

此外需注意:要开启断言功能,在eclipse中需要加JVM参数 -ea,如下图,了解即可。

在这里插入图片描述

一个 【远古的 ~】 简单的示例:

public class TestDemo { public static void main(String[] args) { int a = 1; int b = 2; assert a/b == 0.5 :"结果不正确"; } }

在这里插入图片描述  

🥝1.2 进一步介绍

在Java中,assert关键字用于添加断言(Assertion),用于在程序中进行简单的测试和调试。它可以 用来验证 程序中的某个条件是否满足,如果条件不满足,则会抛出一个AssertionError异常。

 

assert 语句的两种形式:

简单形式:assert condition; 如果condition为假(即false),会抛出AssertionError。

带有错误消息的形式:assert condition : errorMessage; 如果condition为假,会抛出一个带有errorMessage的AssertionError。

需要注意的是,默认情况下,Java虚拟机会 禁用assert语句的执行。如果想要启用assert语句,需要在运行Java程序时加上-ea或-enableassertions选项。

请看一个示例代码,演示了assert关键字的用法:

public class AssertExample { public static void main(String[] args) { int x = 10; // 简单断言,验证x是否大于等于0 assert x >= 0; // 带错误消息的断言,验证x是否为正数 assert x > 0 : "x must be positive"; System.out.println("Program execution continues after asserts"); } }

在上面这个示例中,定义了一个AssertExample类,其中main()方法包含了断言的使用。

首先,我们使用 简单断言 来验证x是否大于等于0。如果断言条件为假,程序会抛出AssertionError,并结束执行。

然后,我们使用 带错误消息的断言 来验证x是否为正数。如果断言条件为假,会抛出一个带有错误消息"x must be positive"的AssertionError。

最后,无论断言是否为真,程序都会继续执行,并输出"Program execution continues after asserts"。

要启用assert语句的执行,可以通过以下命令 来运行示例代码:

java -ea AssertExample

这将使用-ea选项来启用断言。如果断言条件不满足,会抛出相应的异常。如果不使用-ea选项,则断言语句将被忽略执行。

另外,当使用assert语句时,可以在断言条件中 使用任何布尔表达式。如果断言条件为真,则程序继续执行。否则,会抛出AssertionError异常,并且程序的执行会中断。

以下是一些更详细的示例代码,展示了assert语句的不同用法:

public class AssertionExample { public static void main(String[] args) { // 验证数组长度不为零 int[] numbers = {1, 2, 3, 4, 5}; assert numbers.length != 0 : "Array is empty"; // 验证字符串不为空 String message = "Hello World"; assert message != null && !message.isEmpty() : "String is empty"; // 验证方法的返回值 int result = divide(10, 0); assert result != -1 : "Cannot divide by zero"; } public static int divide(int dividend, int divisor) { assert divisor != 0 : "Divisor cannot be zero"; if (divisor == 0) { return -1; } return dividend / divisor; } }

在这个示例中,我们首先验证了一个数组的长度是否不为零。如果数组长度为零,则会抛出一个错误消息"Array is empty"的AssertionError。接下来,我们验证了一个字符串是否不为空。如果字符串为空,则会抛出错误消息"String is empty"的AssertionError。

最后,定义了一个divide()方法,用于除法运算。在方法体的开头,我们使用了一个断言 来验证除数是否不为零。如果除数为零,则会抛出 一个带有错误消息"Divisor cannot be zero"的AssertionError。在这里,断言的主要目的是在代码逻辑错误的情况下提供早期诊断。

在编写程序时,使用assert关键字 可以帮助我们确保代码的正确性,并提供错误消息 以便快速诊断问题。

然而,应该注意的是,在正式发布的代码中,断言可能会被禁用或忽略掉。因此,assert语句不应该 用于处理预期可能发生的错误 或异常情况,而是更适用于调试和测试阶段。

 

持续更新 ing!!!  

欢迎关注,第一时间获取更多干货文章!!!

 

 

🍒 热门专栏推荐:

🥇Python&AI专栏:【Python从入门到人工智能】🥈前端专栏:【前端之梦~代码之美(H5+CSS3+JS.】🥉文献精读&项目专栏:【小小的项目 (实战+案例)】🍎C语言/C++专栏:【C语言、C++ 百宝书】(实例+解析)🍏Java系列(Java基础/进阶/Spring系列/Java软件设计模式等)🌞问题解决专栏:【工具、技巧、解决办法】📝 加入Community 一起追光:追光者♂社区

 

持续创作优质好文ing…✍✍✍

 

记得一键三连哦!!!

 

求关注!求点赞!求个收藏啦!

在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有