一、MAP
1、Map和HashMap
Map是一个接口,HashMap是Map的一个实现类,所以可以如下定义:
Map<String, Integer> m = new HashMap<String, Integer>(); HashMap<String, Integer> m = new HashMap<String, Integer>();
不能如下定义,因为接口是不能实例化的:
Map<String, Integer> m = new Map<String, Integer>(); HashMap<String, Integer> m = new Map<String, Integer>();
2、Map的遍历可参考:
二、List
1、List和ArrayList
List是一个接口,ArrayList是List的一个实现类,所以可以如下定义:
List<String> m = new ArrayList<String>(); ArrayList<String> m = new ArrayList<String>();
2、List的合并可以用addAll函数。
3、List去重。
(1)、不在意顺序。
public static List removeDuplicate(List list) { Set set = new HashSet(); List newList = new ArrayList(); set.addAll(list); newList.addAll(set); return newList; }
(2)、保持顺序(代码来自:java ArrayList去重复值)
public static List removeDuplicateWithOrder(List list) { Set set = new HashSet(); List newList = new ArrayList(); for (Iterator iter = list.iterator(); iter.hasNext();) { Object element = iter.next(); if (set.add(element)) newList.add(element); } return newList; }
4、List中存放自定义对象时排序可参考:
JAVA中Collections.sort()实现List排序的公共方法和自定义方法
*** walker ***
时间: 2024-11-09 09:59:37