温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java Assert断言怎么写语法

发布时间:2026-10-02 18:21:15 来源:亿速云 阅读:96 作者:小樊 栏目:编程语言

在 Java 中,assert 是关键字,用于断言(Assertion),语法非常简单。


一、基本语法

1️⃣ 简单形式

assert 布尔表达式;

如果表达式为 false,抛出 AssertionError。

示例:

int age = -1;
assert age >= 0;

当 age < 0 时,程序会抛出:

Exception in thread "main" java.lang.AssertionError

2️⃣ 带错误信息的形式

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

示例:

int age = -1;
assert age >= 0 : "年龄不能为负数";

抛出:

java.lang.AssertionError: 年龄不能为负数

二、使用前提(非常重要)

⚠️ Java 默认不启用断言

编译

javac Test.java

运行(开启断言)

java -ea Test
# 或
java -enableassertions Test

关闭断言

java -da Test

三、常见使用场景

✅ 参数校验(开发阶段)

public void setScore(int score) {
    assert score >= 0 && score <= 100 : "分数非法";
    this.score = score;
}

✅ 不可能走到的情况

default:
    assert false : "不可能到达的分支";

四、注意事项

❌ 不要用 assert 做业务校验(生产环境可能关闭)
❌ 不要用 assert 代替异常(IllegalArgumentException 等)
✅ assert 仅用于开发调试阶段的逻辑自检


五、assert vs 异常 对比

对比项 assert 异常
是否默认开启 否 是
用于生产 不推荐 推荐
类型 断言失败 程序错误/业务错误

如果你是想问 JUnit 的 Assert(如 Assert.assertEquals)或者 Spring Assert,也可以告诉我,我可以分别讲。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手