【发布时间】:2014-07-09 04:37:15
【问题描述】:
我正在尝试创建一个允许用户输入姓名列表的程序。然后程序会从 ArrayList 中随机拉取,每次拉取一个名字,直到所有名字都用完。我完成了扫描仪部分,如下所示:
public class Auction
{
public static void main (String[] args)
{
Scanner scan = new Scanner(System.in);
ArrayList<String> names = new ArrayList<String> ();
char quit = 'Y';
String playername = null;
while (quit == 'Y')
{
System.out.println("\nPlayer Name:");
playername = scan.next();
names.add (playername);
System.out.print("Enter Another Name? (Y/N) \n");
String word = scan.next();
word = word.toUpperCase();
quit = word.charAt(0);
}
}
}
我有另一堂课,我试图完成随机生成但没有成功。似乎没有任何错误,但它也不起作用。我知道我在“没有替换的随机”部分上还有很长的路要走,但我只是想在我继续之前让它工作。我不确定我是否从其他拍卖类中引用了 ArrayList。像许多其他人一样,我是 Java 新手,所以要温柔。我已经花了一个星期的时间来解决这个问题,这可能需要我几个小时。感谢您的帮助。
public class Draft
{
Random randomGenerator;
ArrayList<String> names;
String randName() {
int index = randomGenerator.nextInt(names.size());
System.out.println("Next on the Block" + names.get(index));
return names.get(index);
}
}
【问题讨论】:
-
你想实现什么我的意思是你喜欢从 arraylist 创建字符串?
-
@Josh 我认为实例化 randomGenerator 更好,因为构造函数 Random() --> 创建一个新的随机数生成器。此构造函数将随机数生成器的种子设置为一个很可能与此构造函数的任何其他调用不同的值。
-
我想将用户输入的名称作为 ArrayList,然后一次随机生成一个,不重复,直到全部生成。这基本上是一个名称拍卖。名称列表进入。然后,每次击键(空格键)时,他们将被随机调用,一个接一个,直到所有都被投标。该程序只接受输入的名称,并一次随机生成一个,以便观众可以对它们进行投标。
标签: java arrays string random arraylist