Java如何在同一行上获取scanner.nextLine()?

4

我有一个程序,从命令行接收用户输入。令人烦恼的是,第一次使用scanner时,输入的文本会在System.out.println之后换行。然而,所有其他时间它都在同一行上作为System.out.println

代码:

//Create a scanner
Scanner input = new Scanner(System.in);

//Gets type
System.out.println("--Television Show or Film (t or f): ");
String type = input.nextLine();
input.close();

输出:

--Television Show or Film (t or f): 
t

期望输出:

--Television Show or Film (t or f): t

非常感谢您的帮助。此外,我正在使用Eclipse控制台。

3个回答

6

应使用System.out.print而非System.out.println


4

尝试:

   System.out.print("--Television Show or Film (t or f): ");
   String type = input.next();

2
原因是您正在使用System.outprintln版本。请仅使用printSystem.out.print("--电视节目或电影(t或f):");

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接