HashMap是 Key-Value对映射的抽象接口.
HashMap中K与V可以是任何类型的.
键值是唯一的,即一个键对应一个值,值可是重复的.
将要根据去重的字段设置为K,对象为V.
当for第一次循环的时候,会将字段put为V,对象为K.
后续循环的时会将对象字段与对象put到Map中的时候.
如果对象的字段与K重复那么对象不在put到Map中.
对象字段与K不重复的情况下才put到Map中.
因为K是唯一的从而实现去重的效果.
例子:
// 创建一个HashMap
HashMap<字段类型, Object> hashMap = new HashMap<>();
// 创建一个ArrayList
List<Object> listView = new ArrayList<>();
// 从数据库中获取的List
List<实体类> list = ListMapper.selectList();
// 循环遍历List
for (实体类 lists : list) {
// 将要根据去重的字段设置为K
// 对象设置为K
hashMap.put(lists.get字段,lists)
}
// hashMap转list
listView = new ArrayList<Object>(hashMap.values());