4.17

发布时间 2023-04-17 17:45:39作者: 磊子记
public static void main(String[] args) {

ArrayList arrayList = new ArrayList();
arrayList.add("A");

HashMap<String, String> map = new HashMap();
//put(K key, V value) 添加元素
map.put("1", "张三");
map.put("2", "李四");
map.put("3", "王五");
map.put("4", "王五");

//remove(key) 删除元素
map.remove("2");
map.remove("3", "王五");
//clear() 清空集合
//map.clear();

boolean name = map.containsKey("1");
System.out.println(name);//true表示包含,false表示不包含

boolean name1 = map.containsValue("王五");
System.out.println(name1);//true表示包含,false表示不包含

int size = map.size();
System.out.println(size);


Collection<String> values = map.values();
System.out.println(values);


//第一种方式:先获取集合所有key,再根据key值循环获取value
//第一步:先获取集合的所有key值
Set<String> set = map.keySet();
//第二步:根据key值获取对应的value,可用foreach也可用Iterator
for (String o: set) {
System.out.println(o+":"+map.get(o));
}
//Iterator it = set.iterator();
//while (it.hasNext()) {
// System.out.println(map.get(it.next()));
//}
//System.out.println("===================================");
//第二种方式:使用entrySet()方法,此方法效率较高,key和value的值都是直接从node中获取
//第一步:先获取集合的所有数据,其数据类型为Map.Entry<Map的key的类型, Map的value的类型>,并将数据存入set集合
Set<Map.Entry<String, String>> entries = map.entrySet();
//第二步:遍历set集合取出数据的node对象,并获取key和value
for (Map.Entry<String, String> node: entries) {
String key = node.getKey();
String value = node.getValue();
//System.out.println(key + ":" + value);