如何制作随机单词

时间:2016-02-11 14:45:17

标签: java

我正在组建Java型教师(教授打字)。我需要生成将被赋予类型的随机单词。我制作了一个程序来生成随机单词,但它只生成没有任何意义的随机单词,但我想生成真正的单词。

实现这一目标的最佳方式是什么?

import java.util.Random;

public class Generator {

    private String CHAR_LIST = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

    private int No_Of_Chars = 2;

    public Generator(String CHARS, int No_Of_Char) {
        No_Of_Chars = No_Of_Char;
        CHAR_LIST = CHARS;
    }

    public String RandomString() {

        String randStr = "";

        for (int i = 0; i < No_Of_Chars; i++) {
            int number = getRandomNumber();
            char ch = CHAR_LIST.charAt(number);
            randStr = randStr + ch;

        }

        return randStr;
    }

    private int getRandomNumber() {

        int randomInt = 0;
        Random randomGenerator = new Random();
        randomInt = randomGenerator.nextInt(CHAR_LIST.length());

        if (randomInt - 1 == -1) {
            return randomInt;
        } else {
            return randomInt - 1;
        }

    }
}

3 个答案:

答案 0 :(得分:3)

正如其他人所说的那样得到一本字典。 向您的浏览器询问单词列表网站。我在第一次搜索时找到了这个:http://www.md5this.com/tools/wordlists.html

将文件加载到ArrayList中,逐个元素。

int idx = new Random().nextInt(yourArray.size());获取随机索引。

在该索引处返回该字词并将其删除String chosenWord = yourArray.remove(idx);

答案 1 :(得分:1)

  1. 在某些文本文件中创建单词列表
  2. 将该文本文件加载到您的程序中
  3. 随机播放列表
  4. 按顺序使用每一个
  5. (3)是唯一需要思考的步骤:使用java.util.Collections#shuffle

答案 2 :(得分:0)

这里你最好的选择是创建一个单词列表。接下来,您将从此列表中随机选择单词,供学生输入。