我曾尝试使用Scanner在数组中获取输入,但是有一些不寻常的事情发生,假设我将整数数组的输入作为1 2,当我尝试打印时它给了我2 0。我正在提供进一步澄清的代码
package org.prac.comp1;
import java.util.Arrays;
import java.util.Scanner;
public class TestClass {
public static void main(String[] args) {
// TODO Auto-generated method stub
//int count=0;
Scanner sc = new Scanner(System.in);
int m = sc.nextInt();
int n=sc.nextInt();
sc.next();
String str=sc.nextLine();
sc.next();
int arr[]=new int[2];
for(int i=0;i<arr.length;i++){
arr[i]=sc.nextInt();
System.out.println(arr[i]);
}
}
}
输入:
8
2
abcdabcd
1
2
输出:
2
答案 0 :(得分:0)
请在此处删除sc.next。
int n = sc.nextInt();
//sc.next();
String str = sc.nextLine();
答案 1 :(得分:0)
sc.next()
声明 - &gt; String str=sc.nextLine();
仍在等待用户提供字符串值。所以sc.next()
取值为1,数组元素从2开始。这就是它显示2而不是1 :)的原因。