我已经完成了一项作业...下面的代码是...关于它的几个问题...在此先感谢。 Java初学者...如果看起来很笨拙,请不要笑>。>
下面的代码...
/*
* Getting to know you...
* @author Elle dela Victoria
* @version 092812
*/
import java.util.*;
public class A15_1
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.print(
"Mind answering some questions for me?\n" +
"Type quit when you're ready to leave.\n");
while(true)
{
System.out.print("Does your name start with the letter H? ");
input.nextLine();
int ans = (int)(Math.random() * 5);
if (ans == 0)
System.out.println("That's awesome!");
if (ans == 1)
System.out.println("Awww, how unfortunate!");
if (ans == 2)
System.out.println("You're amazing at this!");
if (ans == 3)
System.out.println("LOL!");
if (ans == 4)
System.out.println("WTF!! That's horrible!");
System.out.print("Are you male? ");
input.nextLine();
int ans1 = (int)(Math.random() * 5);
if (ans1 == 0)
System.out.println("That's awesome!");
if (ans1 == 1)
System.out.println("Awww, how unfortunate!");
if (ans1 == 2)
System.out.println("You're amazing at this!");
if (ans1 == 3)
System.out.println("LOL!");
if (ans1 == 4)
System.out.println("WTF!! That's horrible!");
System.out.print("Are you female?");
input.nextLine();
int ans2 = (int)(Math.random() * 5);
if (ans2 == 0)
System.out.println("That's awesome!");
if (ans2 == 1)
System.out.println("Awww, how unfortunate!");
if (ans2 == 2)
System.out.println("You're amazing at this!");
if (ans2 == 3)
System.out.println("LOL!");
if (ans2 == 4)
System.out.println("WTF!! That's horrible!");
System.out.print("Are you in school right now?");
input.nextLine();
int ans3 = (int)(Math.random() * 5);
if (ans3 == 0)
System.out.println("So angry when you're sober!");
if (ans3 == 1)
System.out.println("Awww, how unfortunate!");
if (ans3 == 2)
System.out.println("You're amazing at this!");
if (ans3 == 3)
System.out.println("LOL!");
if (ans3 == 4)
System.out.println("WTF!! That's horrible!");
String userinput = input.nextLine();
if (userinput.equalsIgnoreCase("quit"))
break;
}
}
}
有什么方法可以对每个问题使用我的IF语句,而不必更改每个问题的字符串名称?
有什么方法可以为这些if语句创建方法(?),所以我不必为我提出的每个问题都将它们写出来?
如果用户在10秒钟内没有输入答案,我希望有一个计时器提示他们输入答案,我该怎么做?
最佳答案
您可以拥有一个字符串数组,并根据输入ans
打印它们:
String str[] = {"That's awesome!", "Awww, how unfortunate!",
"You're amazing at this!", "LOL!", "WTF!! That's horrible!"};
/* code */
while(true)
{
System.out.print("Does your name start with the letter H? ");
input.nextLine();
int ans = (int)(Math.random() * str.length);
System.out.println(str[ans]);
/* code */
}