循环后显示结果

时间:2013-05-15 00:07:27

标签: java loops

我班上最近了解了循环和随机数生成器,所以我想尝试创建一个你猜到两个骰子总和的游戏。在每个游戏结束时,我想要显示所有用户的猜测以及显示值是什么的一行。我的问题是显示用户最后输入的所有值。到目前为止,这是我的代码:

import java.util.Random;
import java.util.Scanner;
public class Dice2
{
   public static void main (String[] args)
   {
      Scanner kb = new Scanner(System.in);
      Random rn = new Random();
      int roll1= rn.nextInt(6)+1;
      int roll2= rn.nextInt(6)+1;
      int sum = roll1 +roll2;
      boolean retry = false;
      System.out.print("Guess a number: ");
      int guess = kb.nextInt();
      kb.nextLine();
      if (guess!=sum)
      {
         retry= true;
         while (retry)
         {
             System.out.print("Wrong, enter again: ");
             int newGuess = kb.nextInt();
             retry = true;
             if(newGuess==sum)                    
             {
                retry = false;
                System.out.printf("You guessed: %4d%4d\n", guess,newGuess);
                System.out.println("The number was: " + sum); 
             }
             else
                continue;
         }
      }   
      else
         System.out.println("The number was " + sum);
   }
}   

我遇到的问题是当我试图显示用户猜到的所有数字时。我想显示用户的所有猜测,这就是我使用while循环的原因。但是我不确定如何显示用户猜测的所有输入。例如,如果正确的答案是8并且用户猜到2,3,4,5,6,8我希望能够显示如下内容:

You guessed: 2,3,4,5,6,8
The number was :8 

据我所知,在while循环的每次迭代后,我都会覆盖newGuess变量,但是我不知道该怎么做才能显示用户猜到的所有数字。任何帮助或提示将不胜感激。

2 个答案:

答案 0 :(得分:3)

如果您想要的只是一个包含用户猜测的字符串,请使用StringBuilder

StringBuilder builder = new StringBuilder();
builder.append(5);
builder.append(",");
builder.append(4);
builder.append(",");
builder.append(9);
System.out.println(builder.toString());

在while循环之前创建一个,然后每次循环都附加到它。

答案 1 :(得分:0)

您可以将猜测的值存储在Vector中。然后循环显示结果。