当前位置:  首页>> 技术小册>> Java语言基础10-Java中的集合

  • 将指定的 key - value 添加(修改)当前 Map 对象中:
  1. V put(K key, V value);
  • 将 m 中所有的 key - value 存放到当前的 Map 对象中:
  1. void putAll(Map<? extends K, ? extends V> m);
  • 根据指定的 key 从当前 Map 对象中移除 key - value,并返回 value :
  1. V remove(Object key);
  • 清空当前 Map 对象中的所有 key - value :
  1. void clear();
  • 根据指定的 key 获取对应的 value :
  1. V get(Object key);
  • 是否包含指定的 key :
  1. boolean containsKey(Object key);
  • 是否包含指定的 value :
  1. boolean containsValue(Object value);
  • 返回 Map 对象中的 key - value 的个数:
  1. int size();
  • 判断当前 Map 是否为空(没有元素):
  1. boolean isEmpty();
  • 判断当前 Map 和参数对象 obj 是否相等:
  1. boolean equals(Object o);
  • 返回所有 key 构成的 Set 集合:
  1. Set<K> keySet();
  • 返回所有 value 构成的 Collection 集合:
  1. Collection<V> values();
  • 返回所有 key - value 构成的 Set 集合:
  1. Set<Map.Entry<K, V>> entrySet();
  • 示例:
  1. package com.github.map.demo1;
  2. import java.util.Collection;
  3. import java.util.HashMap;
  4. import java.util.Map;
  5. import java.util.Set;
  6. /**
  7. * @author maxiaoke.com
  8. * @version 1.0
  9. *
  10. */
  11. public class Test {
  12. public static void main(String[] args) {
  13. Map<String, Integer> map = new HashMap<>();
  14. map.put("张三", 18);
  15. map.put("李四", 28);
  16. map.put("王五", 45);
  17. System.out.println("map = " + map); // map = {李四=28, 张三=18, 王五=45}
  18. Map<String, Integer> map2 = new HashMap<>();
  19. map2.put("赵六", 9);
  20. map2.put("田七", 30);
  21. System.out.println("map2 = " + map2); // map2 = {赵六=9, 田七=30}
  22. map.putAll(map2);
  23. System.out.println("map = " + map); // map = {李四=28, 张三=18, 王五=45, 赵六=9, 田七=30}
  24. Integer age = map.get("张三");
  25. System.out.println("age = " + age); // age = 18
  26. age = map.get("王八");
  27. System.out.println("age = " + age); // age = null
  28. System.out.println("map.isEmpty() = " + map.isEmpty()); // map.isEmpty() = false
  29. int size = map.size();
  30. System.out.println("size = " + size); // size = 5
  31. System.out.println("map.equals(map2) = " + map.equals(map2)); // map.equals(map2) = false
  32. age = map.remove("张三");
  33. System.out.println("age = " + age); // age = 18
  34. Set<String> keySet = map.keySet();
  35. System.out.println("keySet = " + keySet); // keySet = [李四, 王五, 赵六, 田七]
  36. Collection<Integer> values = map.values();
  37. System.out.println("values = " + values); // values = [28, 45, 9, 30]
  38. }
  39. }

示例:

  1. package com.github.map.demo2;
  2. import java.util.HashMap;
  3. import java.util.Iterator;
  4. import java.util.Map;
  5. /**
  6. * Map的遍历
  7. *
  8. * @author maxiaoke.com
  9. * @version 1.0
  10. *
  11. */
  12. public class Test {
  13. public static void main(String[] args) {
  14. Map<String, Integer> map = new HashMap<>();
  15. map.put("张三", 18);
  16. map.put("李四", 28);
  17. map.put("王五", 45);
  18. for (Iterator<String> iterator = map.keySet().iterator(); iterator.hasNext();) {
  19. String key = iterator.next();
  20. Integer value = map.get(key);
  21. System.out.println("key:" + key + ",value:" + value);
  22. }
  23. }
  24. }

示例:

  1. package com.github.map.demo3;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. /**
  5. * @author maxiaoke.com
  6. * @version 1.0
  7. *
  8. */
  9. public class Test {
  10. public static void main(String[] args) {
  11. Map<String, Integer> map = new HashMap<>();
  12. map.put("张三", 18);
  13. map.put("李四", 28);
  14. map.put("王五", 45);
  15. for (String key : map.keySet()) {
  16. Integer value = map.get(key);
  17. System.out.println("key:" + key + ",value:" + value);
  18. }
  19. }
  20. }

示例:

  1. package com.github.map.demo4;
  2. import java.util.HashMap;
  3. import java.util.Iterator;
  4. import java.util.Map;
  5. /**
  6. * @author maxiaoke.com
  7. * @version 1.0
  8. *
  9. */
  10. public class Test {
  11. public static void main(String[] args) {
  12. Map<String, Integer> map = new HashMap<>();
  13. map.put("张三", 18);
  14. map.put("李四", 28);
  15. map.put("王五", 45);
  16. for (Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator(); iterator.hasNext();) {
  17. Map.Entry<String, Integer> entry = iterator.next();
  18. String key = entry.getKey();
  19. Integer value = entry.getValue();
  20. System.out.println("key:" + key + ",value:" + value);
  21. }
  22. }
  23. }

示例:

  1. package com.github.map.demo5;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. /**
  5. * @author maxiaoke.com
  6. * @version 1.0
  7. *
  8. */
  9. public class Test {
  10. public static void main(String[] args) {
  11. Map<String, Integer> map = new HashMap<>();
  12. map.put("张三", 18);
  13. map.put("李四", 28);
  14. map.put("王五", 45);
  15. for (Map.Entry<String, Integer> entry : map.entrySet()) {
  16. String key = entry.getKey();
  17. Integer value = entry.getValue();
  18. System.out.println("key:" + key + ",value:" + value);
  19. }
  20. }
  21. }