package com.itheima.d5_map;
import java.util.linkedHashMap;
import java.util.Map;
public class MapDemo1 {
public static void main(String[] args) {
//1.创建一个Map集合对象
//Map maps = new HashMap<>(); // 一行经典代码
Map maps = new linkedHashMap<>();
maps.put("鸿星尔克",3);
maps.put("Java",3);
maps.put("枸杞",3);
maps.put("Java",100);
System.out.println(maps);
}
}
package com.itheima.d6_map_api;
import java.util.*;
public class MapDemo {
public static void main(String[] args) {
//1.添加元素:无序,不重复,无索引。
Map maps = new HashMap<>();
maps.put("iphonex", 10);
maps.put("娃娃", 20);
maps.put("iphonex", 100);//Map集合后面重复的键对应的元素会覆盖前面重复的整个元素!
maps.put("华为", 100);
maps.put("生活用品", 10);
maps.put("手表", 30);
// {手表=30, 生活用品=10, 华为=100, iphonex=100, 娃娃=20}
System.out.println(maps);
//2.清空集合
// maps.clear();
// System.out.println(maps);
//3.判断集合是否为空,为空返回true,反之!
System.out.println(maps.isEmpty());
//4.根据键获取对应值:public V get (Object key)
Integer key = maps.get("华为");
System.out.println(key);
System.out.println(maps.get("生活用品"));
System.out.println(maps.get("生活用品2"));
//5.根据键删除整个元素。(删除键会返回键的值)
System.out.println(maps.remove("iphonex"));
System.out.println(maps);
//6.判断是否包含某个键,包含返回true,反之
System.out.println(maps.containsKey("娃娃")); //true
System.out.println(maps.containsKey("iphonex")); //false
System.out.println(maps.containsKey("娃娃2"));
//7.判断是否包含某个值。
System.out.println(maps.containsValue(100)); //true
System.out.println(maps.containsValue(10)); //false
System.out.println(maps.containsValue(22));//false
//[手表, 生活用品, 华为, 娃娃]
//8.获取全部键的集合:public Set keySet()
Set keys = maps.keySet();
System.out.println(keys);
System.out.println("-----------");
//9.获取全部值的集合:Collection values();
Collection values = maps.values();
System.out.println(values);
//10.集合的大小
System.out.println(maps.size()); //4
//11.合并其他Map集合。(拓展)
Mapmap1 = new HashMap<>();
map1.put("java1",1);
map1.put("java2",100);
Mapmap2 = new HashMap<>();
map2.put("java2",1);
map2.put("java3",100);
map1.putAll(map2); //把集合map2的元素拷贝一份到map1中去
System.out.println(map1);
System.out.println(map2);
}
}
package com.itheima.d7_map_traversal;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class MapDemo1 {
public static void main(String[] args) {
Map maps = new HashMap<>();
//1.添加元素:无序,不重复,无索引。
maps.put("娃娃", 30);
maps.put("iphonex", 10);
maps.put("华为", 100);
maps.put("生活用品", 10);
maps.put("手表", 30);
System.out.println(maps);
// {手表=30, 生活用品=10, 华为=100, iphonex=10, 娃娃=30}
//1.键找值:第一步:先拿到集合的全部键。
Set keys = maps.keySet();
//2.第二部:遍历每个键,根据键提取值
for (String key : keys) {
int value = maps.get(key);
System.out.println(key + "===>" + value);
}
}
}
package com.itheima.d7_map_traversal;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class MapDemo2 {
public static void main(String[] args) {
Map maps = new HashMap<>();
//1.添加元素:无序,不重复,无索引。
maps.put("娃娃", 30);
maps.put("iphonex", 100);
maps.put("huawei", 100);
maps.put("生活用品", 10);
maps.put("手表", 10);
System.out.println(maps);
//map = {huawei=100, 手表=10, 生活用品=10, iphonex=100, 娃娃=30}
//1.把Map集合转换成Set集合
Set> entries = maps.entrySet();
//2.开始遍历
for (Map.Entry entry : entries) {
String key = entry.getKey();
int value = entry.getValue();
System.out.println(key + "=====" + value);
}
}
}
package com.itheima.d7_map_traversal;
import java.util.HashMap;
import java.util.Map;
import java.util.function.BiConsumer;
public class MapDemo3 {
public static void main(String[] args) {
Map maps = new HashMap<>();
//1.添加元素:无序,不重复,无索引。
maps.put("娃娃", 30);
maps.put("iphonex", 100);
maps.put("huawei", 100);
maps.put("生活用品", 10);
maps.put("手表", 10);
System.out.println(maps);
//map = {huawei=100, 手表=10, 生活用品=10, iphonex=100, 娃娃=30}
// maps.forEach(new BiConsumer() {
// @Override
// public void accept(String key, Integer value) {
// System.out.println(key + "-----" + value);
// }
// });
maps.forEach(( k, v) ->System.out.println(k + "-----" + v));
}
}