【发布时间】:2019-05-21 19:03:18
【问题描述】:
class Test {
public static void main(String[] args) {
long[] longarr = {40, 50, 70, 90};
int sum = 0;
for (int x: (int) longarr) {
sum += x;
}
System.out.println("sum is " + sum);
}
}
我们如何在不将 long 类型数组设置为 int 的情况下修复错误。有什么办法吗?
【问题讨论】:
-
在这种情况下,这很明显,但是当您要求修复错误时,最好复制错误的文本。
-
它们是
long元素是有原因的,在实际转换之前考虑向下转换以及它对数据的作用。 -
请注意,将
longs 的总和转换为int是完全不安全的。我希望对那些longs 有一些限制,以防止总和超过int的最大值。
标签: java arrays foreach int long-integer