【问题标题】:Random element from string array [closed]字符串数组中的随机元素[关闭]
【发布时间】:2012-10-31 16:30:39
【问题描述】:

我有一个字符串数组:

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

我从中得到随机元素:

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

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

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

【问题讨论】:

标签: java android arrays string random


【解决方案1】:

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

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

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

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

int idx = r.nextInt(fruits.length)

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

【讨论】:

  • 使用泛型,它向下钻取到private static <T> T randomFrom(T... items) { return items[new Random().nextInt(items.length)]; }
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-08-28
  • 1970-01-01
  • 2021-07-12
  • 2017-11-18
  • 1970-01-01
  • 2020-09-06
  • 2019-11-15
相关资源
最近更新 更多