作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 for 循环跳到 2 年级要进入,我不明白为什么会这样。输出如下所示:
输入等级编号 1: 输入等级编号 2:
public static void main(String args[]){
Scanner inputReader = new Scanner(System.in);
System.out.print("Would you like to input grades?: ");
String input = inputReader.next();
if (input.equals("y")){
String[] grades =new String[2];
for (int counter = 0; counter < grades.length; counter++){
System.out.print("Type in Grade Number " + (counter + 1) + ": ");
grades[counter] = inputReader.nextLine();
}
}
}
最佳答案
next()
读取一个词,而不是整行,并且它不会丢弃该词之后的行,因此当您键入名字时,扫描器仍在等待一个理由消耗该行的其余部分。只有当你第一次调用 nextLine() 时它才会这样做(我假设该行的其余部分是空白的)
将您的代码更改为
String lastName = inputReader.nextLine(); // read the whole line, not just a word
System.out.print("Student First Name: ");
String firstName = inputReader.nextLine();
关于java - 在 Java 中跳过 For 循环中的迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20083585/
我是一名优秀的程序员,十分优秀!