如何解决System.out.print() 不适用于我的代码还是我的编译器?
我正在为我的编译器使用 gosApache NetBeans,这就是我的代码
package com.mycompany.mavenproject4;
import java.util.*;
public class MyZodiac {
public static void main(String[] args) {
Scanner zodiac = new Scanner(system.in);
System.out.println("Chinese Zodiac Sign");
System.out.print("Enter your Name: ");
System.out.print("");
String name = zodiac.next();
zodiac.nextLine();
System.out.print("Enter your year of birth: ");
int year = zodiac.nextInt();
}}
然后当我运行这段代码时,它变成了这样
Chinese Zodiac Sign
<user input name>
<user input year>
Enter your Name: Enter your year of birth:
我想要的是
Chinese Zodiac Sign
Enter your name: <user input>
Enter your year of birth:<user input>
解决方法
System.out.println
包含一个换行符,它会导致对缓冲输出进行隐式刷新(如 System.out
)。您可以明确flush
。但是打印 ""
没有任何作用。总之,改变
System.out.print("Enter your Name: ");
System.out.print("");
String name = zodiac.next();
zodiac.nextLine();
System.out.print("Enter your year of birth: ");
到
System.out.print("Enter your Name: ");
System.out.flush();
String name = zodiac.next();
zodiac.nextLine();
System.out.print("Enter your year of birth: ");
System.out.flush();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。