/*如下所示程序,定义了一个String类型的color数组,数组的大小为num(键盘输入),然后用Scanner对象给color赋值,可是发现,当
输入num后,开始输color的元素,0坐标的值永远是“”,无法输入。num后面输入的字符串,直接赋值给了坐标为1的数组元素。
而不是给0号元素?
import java.util.Scanner;
public class demo2 {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
int num = reader.nextInt();
String[] color = new String[num];
for(int i=0;i<num;i++){
color[i]=reader.nextLine();
}
System.out.println(color[0]);
System.out.println(color[1]);
}
}
3 回答
Crafon
TA贡献63条经验 获得超30个赞
这个问题我也遇到过!后来解决了,原因是因为输入完前面数字后按了回车,所以后面的再次输入字符串的就把回车读入了,只要在前一次输入完数字后吃掉回车就行了,可以写一句 reader.nextLine();
添加回答
举报
0/150
提交
取消