我是java的新手,只是学习。我正在做一个java任务,我不太明白;我应该创建一个方法,它将接受一个String数组并从该数组返回一个随机选择的Sting。这是确切的说明: * getRandomWord - >使用一系列字符串并选择 (返回)随机中的一个单词。
signature: String getRandomWord (String [] array)
*
然后我想我必须创建另一种方法。我怀疑你有两个方法命名相同,但说明说:* getRandomWord - >使用一个字符串数组和一个整数(len)。 此方法从数组中选择一个单词 长度超过len。如果这个词的长度 selected小于len,则此方法选择 另一个字是随机的。这重复500次 直到找到/返回一个单词或找不到单词 在这种情况下,此方法将返回null。
signature: String getRandomWord (String [] array, int len)
* 正如我所说,我真的很新,所以感谢你的帮助。
答案 0 :(得分:3)
由于这是一项任务,我只会给你指针自己编写方法。 String getRandomWord (String [] array)
中使用的算法如下所示:
所有这些都应该在不超过3行代码中完成。祝你好运!
答案 1 :(得分:1)
我建议你自己做。如果你没有得到,代码在这里:)使用随机API。 Random方法的nextInt()方法给出了Random值,它可以作为索引从Arra返回随机String。 以下是2种方法的完整代码:
import java.util.Random;
public class TestJava {
public static void main(String[] args) {
String[] strArray = { "first", "second", "third" };
System.out.println(getRandomWord(strArray));
}
static String getRandomWord(String[] array) {
Random random = new Random();
int index = random.nextInt(array.length);
return array[index];
}
static String getRandomWordWithLength(String[] array, int len) {
Random random = new Random();
for (int i = 0; i < 500; i++) {
int index = random.nextInt(3);
String selectedString = array[index];
if (selectedString.length() > len)
return selectedString;
}
return null;
}
}
答案 2 :(得分:1)
首先尝试做自己,因为这是一项任务。如果你没有自己动手,请从下面的代码中获取帮助。
private String getRandomWord(String[] array) {
int idx = new Random().nextInt(array.length);
return (array[idx]);
}
private String getRandomWord(String[] array, int len) {
String word = null;
for (int i = 1; i <= 500; i++) {
word = getRandomWord(array);
if (word.length() > len) {
break;
} else {
word = null;
}
}
return word;
}