【JAVA】hashMap和hashSet的区别

1. hashMap

主要对外接口:

  • clear()
    clear() 的作用是清空HashMap。它是通过将所有的元素设为null来实现的。
  • containsKey(key)
    containsKey() 的作用是判断HashMap是否包含key。
		HashMap hashMap=new HashMap<>(4);
		hashMap.put(3, 2);
		hashMap.put(1, 1);
		hashMap.put(6, 9);
		hashMap.put(10, 2);
		hashMap.put(8, 9);
		//结果为 true
		System.out.println(hashMap.containsKey(8));
  • containsValue(value)
    containsValue() 的作用是判断HashMap是否包含“值为value”的元素。
  • entrySet()、values()、keySet()
    entrySet()的作用是返回“HashMap中所有Entry的集合”,它是一个集合。
  • get(key)
    get() 的作用是获取key对应的value
  • put(key,value)
    put() 的作用是对外提供接口,让HashMap对象可以通过put()将“key-value”添加到HashMap中。
  • putAll(map)
    putAll() 的作用是将"m"的全部元素都添加到HashMap中
  • remove(key)
    remove() 的作用是删除“键为key”元素
  • clone()
    克隆一个HashMap,并返回Object对象

一个简单的实例:

public static void main(String[] args) {
		HashMap hashMap=new HashMap<>(4);
		hashMap.put(3, 2);
		hashMap.put(1, 1);
		hashMap.put(6, 9);
		hashMap.put(10, 2);
		hashMap.put(8, 9);
		
		System.out.println(hashMap.containsKey(8));
		//遍历这个hashmap,hashmap是一个无序的数列
		Iterator> iterator=hashMap.entrySet().iterator();
		while(iterator.hasNext()){
			Entry entry=iterator.next();
			Integer key=entry.getKey();
			Integer value=entry.getValue();
			System.out.println("key= "+key);
			System.out.println("value= "+value);
		}
	}

2. hashSet

public static void main(String[] args) {
		HashSet set =new HashSet<>();
		set.add(22);
		set.add(3);
		set.add(8);
		
		//遍历这个hashset
		//1.foreach
		for (Integer integer : set) {
			System.out.println(integer);
		}
		
		//2.迭代器
		Iterator iterator=set.iterator();
		while(iterator.hasNext()){
			Integer integer=iterator.next();
			System.out.println(integer);
		}

		//对比查找
		System.out.println(set.contains(22));
		
		//清空
		//set.clear();
		
		//获取长度
		System.out.println(set.size());
	}

3. hashMap 和hashSet的区别

【JAVA】hashMap和hashSet的区别_第1张图片

你可能感兴趣的:(#,Java)