这是类Roulette.java
public static void main(String[] args) {
System.out.println("Welcome to roulette " + Casino.player());
}
这是类Casino.java
public static String player() {
Scanner sc = new Scanner(System.in);
String name;
System.out.println("Please enter your name : ");
name = sc.nextLine();
return name;
}
运行 Roulette.java
时,它不会将 Casino.player()
打印为您的姓名变量,而是运行该函数并询问您的姓名。我想先运行Casino.java
,询问你的名字,然后运行轮盘赌并用你的名字欢迎你。不要再问你的名字。
注意:编程新手
最佳答案
Casino
类中的 player()
方法打印出输入用户名的消息。每次调用该方法时都会发生这种情况。要执行您想做的操作,您需要创建一个条件来检查播放器是否已设置。
注意:这不是好的实践或类设计,将来您应该研究类设计和在类中设置字段的正确实践。我建议将此代码发布在Code Review上一旦你开始工作,就可以得到如何改进这个设计的完整答案。
您的 Casino
类应如下所示:
public class Casino {
private static String player = "";
public static String player() {
if (player.equals("")) {
Scanner sc = new Scanner(System.in);
System.out.println("Please enter your name : ");
this.player = sc.nextLine();;
}
return player;
}
}
关于java println 运行函数不返回函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39711746/