如果一个hashMap,它的Key默认都是小写,现在有一个Key包含了大写字母,要将这个Key改为小写,怎么办?(将key里面的小写改为大写,自行类比)
创建一个如题的map,代码:
HashMap<String, String> map = new HashMap<String, String>();
map.put("name", "jack");
map.put("age", "10");
map.put("Gender", "male");
此时就是要将"Gender"这个key,改为"gender";
首先我们必然是要遍历map,得到每一个entry,以便取到key和value;
但是问题在于,我们然后将这个key用toLowerCase()改成小写就可以了吗?答案是否定的;
for (Entry<String,String> entry : map.entrySet()) {
String key = entry.getKey();
String value = entry.getValue();
if (!key.equals(key.toLowerCase())) { //简单方法判断字母格式的字符串是否包含大写,反之判断是否包含小写就用 !key.equals(key.toUpperCase())
key = key.toLowerCase();