【发布时间】:2017-04-22 00:17:02
【问题描述】:
我正在为一个学校项目制作一个小游戏。据推测,玩家可以从一个字符列表中进行选择(稍后我将把选择的字符放入一个数组中),并且每个字符都可以有一个仅由单个字符组成的名称。
我将字符池放在一个 ArrayList 中,但我不知道如何防止它们将重复的字母作为名称。
ArrayList<Character> names = new ArrayList<Character>();
while (names.size() < 10) {
char random = (char) ((char) rand.nextInt(26)+'A');
if (!names.contains(random)) {
names.add(random);
}
}
ArrayList<Person> charpool = new ArrayList<Person>();
while (charpool.size() < 10){
charpool.add(new Person(names.get(rand.nextInt(10)),
(r1.nextInt(100)+1), (r1.nextInt(100)+1),
(r1.nextInt(100)+1), (r1.nextInt(100)+1),
(r1.nextInt(100)+1), (r1.nextInt(100)+1),
(r1.nextInt(100)+1), (r1.nextInt(100)+1),
(r1.nextInt(100)+1), (r1.nextInt(100)+1),
true, (r1.nextInt(100)+1), 1));
}
不要介意 int 变量的冗长列表,它是用于随机技能的。它可能会更漂亮,但在这一点上我不在乎。
我对整个 Java 的东西还是比较陌生,而且我以前没有使用过列表或类似的东西。
【问题讨论】:
标签: java list arraylist character