java 断言

1.1 语法格式

Java 断言有两种使用方式:

// 简单形式
assert condition;

// 带错误信息形式
assert condition : "Error message";


实战示例
public class AssertDemo {
public static void main(String[] args) {
int[] arr = {1, 2, 3};
printElement(arr, 2); // 正常执行
printElement(arr, 5); // 触发断言
}

static void printElement(int[] arr, int index) {
assert index >= 0 && index < arr.length : "索引越界:" + index;
System.out.println("元素值:" + arr[index]);
}
}

▶️ 运行结果(启用断言后):

元素值:3
Exception in thread "main" java.lang.AssertionError: 索引越界:5
 

二、启用与禁用断言

启用方式
启用范围 命令格式
全部断言 java -ea MainClass
指定包 java -ea:com.example... MainClass
指定类 java -ea:com.example.Test MainClass

 

  禁用方式
# 禁用所有断言
java -da MainClass

# 启用全部但禁用特定包
java -ea -da:com.example.utils... MainClass
 
  IDE 配置(IntelliJ IDEA)
打开 Run/Debug Configurations
在 VM options 中添加:
-ea

posted @ 2025-05-21 10:07  KLAPT  阅读(53)  评论(0)    收藏  举报