【发布时间】:2016-11-07 03:51:25
【问题描述】:
这周才开始学习代码,所以我可能只是太超前了,但任何帮助都会很棒!
我一直在努力尝试赋予我的程序两种不同的个性特征:正式和非正式。
我尝试通过使用布尔值“MANNERS”来确定此后的每个引用(包括名称选择),因为可以根据这个布尔值检查函数。
每次 myName 是引用时,我希望它随机选择;一个正式名称参考或一个非正式名称参考,取决于它设置的“礼仪”是什么。
这工作,但一旦我把它们放在一起,它似乎就停止工作了------->
公共类名选择{
//A list of formal things to call me
public static String formName(){
ArrayList<String> formNames = new ArrayList<String>();
formNames.add("Master");
formNames.add("Sir");
formNames.add("Mr Smith");
Random formalNs = new Random();
formalNs.nextInt(3);
return formNames.get(formalNs.nextInt(3));
}
//A list of informal things to call me
public static String nickName(){
ArrayList<String> nickNames = new ArrayList<String>();
nickNames.add("Ol' Fella");
nickNames.add("Buddy");
nickNames.add("Dude");
nickNames.add("Mate");
nickNames.add("John");
Random nickNs = new Random();
nickNs.nextInt(5);
return nickNames.get(nickNs.nextInt(4));
}
public static void main(String[] args){
//keeps saying "value of manners is not used"??could this be the problem??
boolean manners;
//as default, it choices a formal name
String myName;
// 询问我是否要正式(有“礼貌”)
System.out.println("Do you want me to be formal?");
Scanner formal = new Scanner(System.in);
String formalInput = formal.next();
//If formal, turn manners ON
if (formalInput.equals("yes")||formalInput.equals("yep")){
manners = true;
}
//If informal, turn manners OFF
else {manners = false;};
//If manners are ON, choose random name from formName()
if (manners = true){
myName = formName();
}
//Else choose from nickName()
else{myName = nickName();};
System.out.println("Hello " + myName + ", how are you?");
Scanner feeling = new Scanner(System.in);
String feelingInput = feeling.next();
if (feelingInput.equals("dunno")){
System.out.println("Huh..");
}
else{
System.out.println("Interesting...how much sleep have you had " + myName + "?");
System.out.println(myName);
System.out.println(myName);
}
}
}
如果它第一次说“Dude”,它总是说“Dude”。 如果它第一次说“先生”,它总是说“先生”。 (不是我想要的,我每次都尝试从同一个数组中选择不同的名称)
我猜我需要在某处放置某种循环,以使其不断随机选择名称,但我不知道在哪里。我愿意知道。 TY
【问题讨论】:
标签: java variables reference boolean