因为我从大学里忘记了所有这一切,所以慢慢重新学习java。我总是想知道我是否以奇怪的方式做我的循环。我觉得必须有更好的方法来做循环。我很确定我总是比他们应该做的更长。无论如何我正在关注http://programmingbydoing.com/a/twenty-questions.html因为它让我不得不谷歌并强迫我理解而不仅仅是复制代码。我在这20个问题部分(链接)。这是我为它写的代码,它起作用。但是我有更好的方法吗?或者我可以做到这一点的其他可能方式是什么。和&&算作嵌套的if语句。
编辑*来想想吧。任何批评都是受欢迎的。不一定只是我的循环。如果我正在做长篇版本的任何事情,或者我正在做一些奇怪的事情,请告诉我。
* EDIT2。哎呀抱歉。不知道有一个codereview区域。如果我知道它存在,就会张贴在那里。
import java.util.Scanner;
public class TwoQuestions
{
public static void main (String [] args)
{
Scanner keyboard = new Scanner (System.in);
String answerOne, answerTwo;
System.out.println("Two questions game!");
System.out.println("Think of an object, and I'll try to guess it");
System.out.println("");
System.out.println("");
System.out.println("Question 1 - Is it an animal, vegetable, or random thing?");
answerOne = keyboard.next();
System.out.println("");
System.out.println("Question 2 - Is it bigger than a breadbox?");
answerTwo = keyboard.next();
if (answerOne.equals("animal") && answerTwo.equals("yes"))
{
System.out.println("You are thinking of a moose!");
}
else if (answerOne.equals("animal") && answerTwo.equals("no"))
{
System.out.println("You are thinking of a squirrel");
}
else if (answerOne.equals("mineral") && answerTwo.equals("yes"))
{
System.out.println("You are thinking of a Camaro");
}
else if (answerOne.equals("mineral") && answerTwo.equals("no"))
{
System.out.println("You are thinking of a paper clip");
}
else if (answerOne.equals("vegetable") && answerTwo.equals("yes"))
{
System.out.println("You are thinking of a watermelon");
}
else if (answerOne.equals("vegetable") && answerTwo.equals("no"))
{
System.out.println("You are thinking of a carrot");
}
else
{
System.out.println("Please make sure you are spelling correctly, no caps");
}
}
}
答案 0 :(得分:0)
你的条件语句没有错,但那些不是循环。
阅读本文以获取有关循环的信息:http://www.tutorialspoint.com/java/java_for_loop.htm
对于你的其他情况,你应该要求用户提供另一个输入,这样如果他们输入错误就不必重新运行程序。