我正在学习java,我正在尝试创建一个简单的程序来收集用户名并给你一个机会来改变那个用户名...但是,程序总是在做同样的事情:它不是给我一个改变我的用户名的机会。我确信问题在于我所做的功能:
public String change (String Accname) {
String chg;
System.out.println("Are you satisfied with this username: "+Accname+"?");
chg=in.nextLine();
if(chg=="yes"||chg=="Yes") {
return Accname;
} else if(chg=="no"||chg=="No") {
System.out.println("What would you want your username to be?");
Accname=in.nextLine();
}
return Accname;
}
我在主要功能上写了这一行:
name.change(username);
(当然,这不是完整的代码,我给了你重要的一句话)。 在这一行之后,我的程序给了我一个没有机会的用户名来改变我的用户名。这就像程序忽略了更改功能。 这个问题也发生在前一段时间我在尝试制作一个在两个数字之间切换的简单程序。最后,没有任何反应。
如果有人可以帮助我,我会非常感激!
答案 0 :(得分:2)
你必须做这样的事情,因为结果是函数change
的返回:
name = change(username);
此外,您应该将字符串与equals
而不是==
进行比较,否则您将比较其引用。