以下示例将一个和整数作为程序参数并计算它们的平均值。但不知何故,它打印“NaN”
public static void main(String args[]) {
int sum= 0;
for(int i= 0; i < args.length; i++) {
sum= sum + Integer.parseInt(args[i]);
}
System.out.println("Average: " + (float)sum / args.length);
}
它如何评价为NaN
?
答案 0 :(得分:6)
我测试了你的代码:
public class Test {
public static void main (String args[]) {
int sum = 0;
for(int i= 0; i < args.length; i++) {
sum = sum + Integer.parseInt(args[i]);
}
System.out.println("Sum: " + sum);
System.out.println("Average: " + (float)sum / args.length);
}
}
我把它当作:
java Test 1 2 3
输出结果为:
Sum: 6
Average: 2.0
运行java程序时可能忘了传递参数?因为当我把它作为:
运行时java Test
我明白了:
Sum: 0
Average: NaN