繁体   English   中英

我必须使用Scanner读取数字,每个数字

[英]I have to read numbers by using Scanner and for each

我在互联网上找不到任何提示。 几乎提到“每个”时都说“不能更改数组上分配的值”是不可能的吗? 我的代码是这样的:

Scanner in = new Scanner(System.in);
int[] arr = new int[5];
for(int i : arr)
    i = in.nextInt();

我想使用“ for each”并使用Scanner类读取数字,请帮助我。

使用简单的for循环,然后将读取的数字添加到数组的第i个位置:

Scanner in = new Scanner(System.in);
int[] arr = new int[5];
for (int i = 0; i < arr.length; i++) {
    arr[i] = in.nextInt();
}

在您的特定情况下使用增强的for循环没有多大意义,因为数组最初是空的。 但是,您可以使用它遍历创建的数组,即:

for (int i : arr) {
  System.out.println(i);
}

就这么简单:-

Scanner in = new Scanner(System.in);
int[] arr = {0, 1, 2, 3, 4};

for (int i : arr) {
    arr[i] = in.nextInt();
}

但是通过上面的陈述João Silva ,你应该使用for-each循环只迭代已初始化数组,而不是将其初始化..

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM