import java.util.*;
public class AssertionJudgement{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
double sum=0;
int m=0;
while(sc.hasNextDouble()){
double x = sc.nextDouble();
assert x>=0&&x<=100:"数据不合理";//判断条件为true时,程序继续运行。
m = m+1;
sum = sum+x;
}
System.out.printf("%d个数的和为%f\n",m,sum);
System.out.printf("%d个数的平均值是%f\n",m,sum/m);
}
}
当使用java解释器直接运行应用程序时,默认地关闭断言语句,在调试程序时,可以使用-ea启用断言语句。(以我的为例:java -ea AssertionJudgement 即可。)
测试结果:
第一次测试结果:
98
99
-1
Exception in thread "main" java.lang.AssertionError: 数据不合理
at AssertionJudgement.main(AssertionJudgement.java:9)
第二次测试结果:
87
88
end
2个数的和为175.000000
2个数的平均值是87.500000