我有两个数组,都是String类型,但是一个是null
String[] records = {"10", "2", "John", "Chris", "1", "Peter", "3", "Bob", "George", "Paul"};
String[] seating = (Integer.parseInt(records[0])); //Size of the array is the 0 index of the records.
我能够在记录数组上获取索引位置和组大小,例如索引1,我可以使用Integer.parseInt(records [1])来获取大小并使用它也可以找到下一个的索引基。
我的问题是:我如何将组随机放入新阵列&我如何确定何时放置它而不会在我的脸上抛出数组索引超出范围的异常。不覆盖先前放置的组。我能够在每次迭代时生成随机数(每次迭代放置一个组)。我还有一个方法,它采用索引和数组以及生成的随机数,将它放在新数组中。
每次运行程序时,都会随机放置组。例如,我的输出可能是(空白点包含“-empty - ”)。
Spot 1: -empty-
Spot 2: Bob
Spot 3: George
Spot 4: Paul
Spot 5: -empty-
Spot 6: John
Spot 7: Chris
Spot 8: -empty-
Spot 9: Peter
Spot 10: -empty-
答案 0 :(得分:1)
在我看来,你只是在使用错误的数据类型,这会让你的生活变得更加复杂。您可以拥有:
,而不是带有代码来指示组大小的String
数组
String[][] records = {{"John", "Chris"}, {"Peter"}, {"Bob", "George", "Paul"}};
更好的方法是使用ArrayList<String[]>
或ArrayList<List<String>>
,因为那样你就可以Collections.shuffle(records);
答案 1 :(得分:0)
有很多方法可以做到这一点,但都依赖于类似的概念,只是&#34;隐藏&#34;他们不同。