使用hashmap显示单词和定义列表

时间:2013-05-02 13:37:41

标签: java list random hashmap

我正在尝试使用hashmap创建一个包含单词列表的简单游戏。我想做的是。我想以加扰的方式向用户显示列表中的单词。例如,像hello这样的单词将是“loeh”。用户必须输入他的答案,如果答案是正确的,用户将得到一个点。有人可以告诉我们如何能够将地图列表中的密钥加密以显示给用户;

这是我到目前为止的代码;

public class Game extends Applet {

/*
 * (non-Javadoc)
 * 
 * @see java.applet.Applet#init()
 */

// create a list words with answers. probbaly a map list


Map<String, String> words =  new HashMap<String, String>();     
// add words and  definition to the  list
     words.put("HI", " A form Salutation");

2 个答案:

答案 0 :(得分:0)

这是我要去的概念。

for each letter in word
    listofletters.add(letter)

while(listofletters.notEmpty())
    scrambledword += listofletters.pop(RandomNum(0,listofletters.size))

print scambledword

弹出这里是返回信并将其从列表中删除。如果你将我的psuedo代码编写成java并且有错误,请将其作为编辑重新发布,并帮助你调试。

答案 1 :(得分:0)

public String shuffle (String yourKey) {
    char tmp;
    char[] newStr = yourKey.toCharArray();
    Random r = new Random();
    int newPos;
    for (int i=0; i < yourKey.length(); i++) {
        newPos = r.nextInt(yourKey.length());
        tmp = newStr[i];
        newStr[i] = newStr[newPos];
        tab[newPos] = tmp;
    }
    return new String(newStr);
}

在主要代码中

String newStr = shuffle(yourKey);
while(newStr.compareTo(yourKey)==0) {
    newStr = shuffle(yourKey);
}