package com.g;
import java.util.HashSet;
import java.util.Set;
public class Test_Set {
/**
* Set集合的特点:
* 不包含重复元素的collection;
*
* HashSet的特点:
* 不保证set集合的迭代顺序;特别是他不保证这个顺序恒久不变。
*
* HashSet保证元素唯一性的原理:
* add的过程中,进行了hashCode和equal的判断。
* 判断流程:首先比较hashCode如果不同,再比较equal方法。元素重复就不再添加
* 使用要点:
* 使用HashSet时,如果要保证元素的唯一性必须重写hashCode方法和equal方法。
*
*/
public static void main(String[] args) {
Set<String> s = new HashSet<String>();
s.add("hello");
s.add("world");
s.add("java");
s.add("world");
for (String s2: s) {
System.out.println(s2);
}
}
}
package com.g;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class Test_Map {
/**
* Map集合:
* 将键映射到值的对象。一个映射不能包含重复的键,一个键映射一个值。
*
* Map集合不使用add方法,使用自己的put方法put();
*
* Map的常用成员方法:
* put(K,V);加入集合
* remove(Object K);删除
* clear();清空
* m.containsKey(Object K);判断键是否存在
* m.containsValue(Object V);判断值是否存在
* isEmpty();判断集合是否为NULL
* size();返回键值对数
*
*
* Map集合的获取方法:
* get(K);
* keySet();返回一个所有键的Set集合
* values();返回一个所有值的Set集合
*
* Map集合的遍历:
* 方法1:通过键的集合keySet()遍历用get方法获取值;
* 方法2:通过Map返回一个Set键值对数组,对数组进行遍历
*/
public static void main(String[] args) {
Map<String,String> m = new HashMap<String,String>();
m.put("it01","aaaaaa");
m.put("it02","bbbbbb");
m.put("it03","cccccc");
Set<Map.Entry<String,String>> s = m.entrySet();
for (Map.Entry<String,String> m2:s) {
System.out.println(m2.getKey()+"---------------"+m2.getValue());
}
}
}
Map集合两种找值方法,图解

本文深入探讨了Java集合框架中的HashSet和HashMap。HashSet保证元素唯一性的原理在于重写hashCode和equals方法,其不保证迭代顺序。而HashMap是一个键值对的映射,使用put方法插入数据,提供了多种操作方法如containsKey和containsValue。文章还介绍了Map集合的遍历方法。

被折叠的 条评论
为什么被折叠?



