【发布时间】:2014-03-16 16:35:13
【问题描述】:
我希望输入一个int 和另一个long 例如:1 和 1000000000,现在我希望创建一个大小为 1000000000 的数组。然后在数组的每个索引处存储 int val,例如:@987654323 @。
当我尝试这样做时,Netbeans 在这一行显示错误:
arr = new long[y+1]` and `arr[j] = 0`
“从 long 到 int 的可能有损转换”。 这是我的代码:-
public static void main(String[] args) throws IOException
{
BufferedReader s = new BufferedReader(new InputStreamReader(System.in));
String[] xe = s.readLine().split(" ");
int x = Integer.parseInt(xe[0]);
long y = Long.parseLong(xe[1]);
long []arr;
arr = new long[y+1];
for(long j=0;j<=y;j++)
arr[j] = 4;
}
【问题讨论】:
-
10 亿可以存储为
int,因为上限约为 21 亿。注意:十亿个long值使用 8 GB 内存。如果您只需设置几个值,Map<Integer, Long>可能会更好地工作。
标签: java arrays long-integer