gpt4 book ai didi

java - 如何刷新java中的结束符?

转载 作者:行者123 更新时间:2023-12-01 14:00:03 27 4
gpt4 key购买 nike

我是 java 新手,我制作了我的第一个“程序”——一个简单的输入/输出程序,可以输出您输入的内容。

import java.util.Scanner;

class Input{
public static void main(String args[]){
int zip;
int a;
double e = 2.718281828459045;
String name;

Scanner in = new Scanner(System.in);

System.out.println("Enter your zip code: ");
zip = in.nextInt();

System.out.println("Enter your name: ");
name = in.nextLine();

System.out.println("Enter an integer: ");
a = in.nextInt();

System.out.println(name+", "+"your zip code is "+zip+" and e*"+a+" is "+e*a);

}
}

因此,当我运行此命令时,我输入邮政编码,然后它会转到接下来的整数输入。我怀疑一旦我按下回车键,输入流就会吞掉结束行字符。有什么快速修复方法还是我只是java-stupid?

谢谢,所以!

最佳答案

介于两者之间

System.out.println("Enter your zip code: ");
zip = in.nextInt();

System.out.println("Enter your name: ");
name = in.nextLine();

添加额外的in.nextLine()。所以

System.out.println("Enter your zip code: ");
zip = in.nextInt();

in.nextLine(); // consume dangling eol characters

System.out.println("Enter your name: ");
name = in.nextLine();

方法 Scanner#nextInt() 仅读取创建 int 所需的字节,而不读取其后面的任何内容。如果在输入整数后按 Enter 键,则会出现一个悬空的回车符/换行符。您将需要一个 Scanner#nextLine() 来摆脱它。

关于java - 如何刷新java中的结束符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19394681/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com