直接上代码
个人喜欢case1//
public class demo {
public static void main(String[] args) {
Map<String, String> map = new HashMap<>();
map.put("Hello1", "Carlos");
map.put("Hello2", "Betty");
map.put("Hello3", "Tammy");
map.put("Hello3", "Tammy");
//Map会对重复的键值对进行自动筛选
System.out.println("map集合的长度为:" + map.size());
System.out.println("**********************");
//case1~最实用的也是最常用的,通过使用增强for循环,调用Map的entrySet()方法
for (Map.Entry<String, String> entry : map.entrySet()
) {
//获得键和值,如果键值对都要,这是最为推荐的方法
System.out.println("key:" + entry.getKey() + "\tvalue:" + entry.getValue());
}
System.out.println("**********************");
//case2~迭代器遍历map,同样需要使用entrySet()方法
Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = iterator.next();
System.out.println(entry.getKey() + "_" + entry.getValue());
}
System.out.println("**********************");
//case3~个人最喜欢的代码风格,Lambda表达式,但是企业级开发不建议使用~
map.forEach((k, v) -> System.out.println(k + "_" + v));
System.out.println("**********************");
//case4~由于Map是键值对的形式进行存储,所以通过键找到值,这是最基本的思路,同样使用增强for循环
for (String key : map.keySet()
) {
System.out.println(key + "_" + map.get(key));
}
}
}