30

我有一个字符串数组:

String[] fruits = {"Apple","Mango","Peach","Banana","Orange","Grapes","Watermelon","Tomato"};

我通过以下方式从中获得随机元素:

String random = (fruits[new Random().nextInt(fruits.length)]);

现在我想得到当我点击按钮得到随机水果时苹果出现的数字,就像当我按下随机按钮时它给了我香蕉..并且也应该给我那个元素编号是3

我得到了元素,但在获取元素编号时遇到问题,所以请帮帮我

4

1 回答 1

68

只需将生成的索引存储在变量中,然后使用此变量访问数组:

int idx = new Random().nextInt(fruits.length);
String random = (fruits[idx]);

PS 我通常不喜欢Random每次随机化生成新对象——我更喜欢在程序中使用单个对象Random——并重新使用它。如果我以后在程序中发现任何错误,它可以让我轻松地重现有问题的序列。

根据这种方法,我将在Random r某处有一些变量,我将只使用:

int idx = r.nextInt(fruits.length)

但是,您的方法也可以,但是如果以后需要,您可能很难重现特定序列。

于 2012-11-12T08:44:24.567 回答