日期:2014-05-20  浏览次数:20757 次

请教下map的键和值的相互转换
大家好,刚开始学java,请多多帮助,谢谢!
我想完成这样的功能:
  Map<String,String>  mTestmap;
   mTestmap=new HashMap<String, String>();
mTestmap.put("xingqi1","星期1");
mTestmap.put("xingqi2","星期2");
mTestmap.put("xingqi3","星期3");
mTestmap.put("xingqi4","星期4");
mTestmap.put("xingqi5","星期5");

我现在想让一个字符串 如: String s="xingqi4"; 经过一个函数转换成“星期5”
还有 String s1="星期5"转换成 “xingqi5” ,请问下这样如何转换,谢谢!



------解决方案--------------------
private String getValue(String key,Map<String,Object> map){
String value = "";
if(map.containsKey(key)){//判断传入的key值是map的key就直接获得值
value = (String) map.get(key);
} else {//判断传入的key值不是map的key 就遍历map找到对应value值 返回这个value的key
for(String mapKey : map.keySet()){
if(map.get(mapKey).equals(key)){
value = mapKey;
}
}
}
return value;
}