识别未知单词(Word不在HashMap Dictionary中)

时间:2014-03-06 16:28:07

标签: java dictionary hashmap

有没有办法确定用户是否输入了不在您的hashmap字典中的单词?像这样:

Map<String, String> map = new HashMap<String, String>();
    map.put("dog", "type of animal");

如果用户要求“cat”的定义,是否有办法确定该单词没有定义?如果是这样,我怎么能将它设置为用户可以添加此定义的位置?喜欢:

“猫的定义。”
- 定义不存在。添加定义:
“动物的种类。”

然后当你再次要求定义时,它会给出这个定义。我会自己查一下,但搜索条件太具体了,无法找到任何有用的东西。

4 个答案:

答案 0 :(得分:0)

如果地图中不存在该密钥,则会返回null

String definition = null;
if ((definition = map.get(input)) != null){
  return definition;
}else{
  //do your stuff. add to your map
}

答案 1 :(得分:0)

您应该使用HashMap<String, String> map...

您可以使用map.containsKey(String)

答案 2 :(得分:0)

更好的方法:

if (map.containsKey(input)){
  return map.get(input); //this is your definition
}else{
  //do your stuff.
}

这样就可以避免代码中出现空值!

答案 3 :(得分:0)

如果你花了2分钟谷歌搜索,你会发现containsKey是专门针对tyhat目的而设计的。 如果密钥不存在,它将保留错误。

如果get方法返回null,您也可以轻击;

检查javadoc