所以,这看起来相当简单。但是当我运行它时,它给了我奇怪的输出。
首先,我将queries[] Array
中元素的数量存储在NumQ
变量中。然后,我通过循环从0到numQ-1来存储元素的值。它适用于任何其他情况。
int numQ=sc.nextInt();
String queries[]=new String[numQ];
for(int i=0;i<numQ;i++){
queries[i]=sc.nextLine();
}
System.out.println(queries[0]);
System.out.println(queries[1]);
System.out.println(queries[2]);
就我而言,输入是 - (注意它甚至不要求索引2的值.numQ是3)
这是输出。
请参阅queries[0]
,它存储空白值(蓝色选择为空白)。在queries[ 1 ]
,它存储第一个输入(存储在索引0处。它存储索引索引2处的1个值,依此类推。)
那么我的代码有什么问题。 在此先感谢: - )
答案 0 :(得分:1)
我认为sc
是扫描程序对象。方法nextInt()
仅在换行前扫描int部分。因此,您必须使用sc.nextLine()
跳过换行符
int numQ=sc.nextInt();
sc.nextLine();
String queries[]=new String[numQ];
for(int i=0;i<numQ;i++){
queries[i]=sc.nextLine();
}
System.out.println(queries[0]);
System.out.println(queries[1]);
System.out.println(queries[2]);