1:web1.0和web2.0
2:集合的合并
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
list.add(55);
list.add(62);
list.add(35);
list.add(75);
Set<Integer> set = new HashSet<>();
set.add(55);
set.add(62);
set.add(35);
set.add(75);
/* for (Integer integer : set) {
list.add(integer);
}*/
list.addAll(set);
System.out.println(list.size());
}
3:集合顺序的倒置 将集合和数组之间的互换
List<Person> list = new ArrayList<>();
Person p1 = new Person("p1",52,"124");
Person p2 = new Person("p2",59,"125");
Person p3 = new Person("p3",12,"124");
Person p4 = new Person("p4",37,"124");
Person p5 = new Person("p5",88,"124");
list.add(p1);
list.add(p2);
list.add(p3);
list.add(p4);
list.add(p5);
Collections.reverse(list);
/*Person[] ps = list.toArray(new Person[]{});
List<Person> listp = Arrays.asList(ps);
System.out.println(ps.length);*/
4:判断对象是否相同与 可比较没有关系
Set<Person> set = new HashSet<>();
Person p1 = new Person("p1",52,"124");
Person p2 = new Person("p2",59,"125");
//判断对象是否相同与 可比较没有关系
Person p3 = new Person("p3",12,"124");
Person p4 = new Person("p4",37,"124");
Person p5 = new Person("p5",88,"124");
set.add(p1);
set.add(p2);
System.out.println(set.size());
5:TreeSet集合中只有有比较方法时才能排序
Set<Person> set = new TreeSet<>(new Comparator<Person>() {
public int compare(Person o1, Person o2) {
return o1.getAge()-o2.getAge();
}
});
6:ArrayList和Vector( synchronizedCollection可处理线程安全问题)
//非线程安全
List<Integer> list1 = new ArrayList<Integer>();
Collections.synchronizedCollection(list1);//了解
//线程安全
List<Integer> list2 = new Vector<Integer>();
7:TreeSet添加两个相同的数据时,只接受一个 只返回一个(原理是因为得到的值都是一样的)
Person p1 = new Person(232);
Person p2 = new Person(232);
System.out.println(p1.equals(p2));
8:list集合(ArrayList、LinkedList、Vetor)Set集合(HashSet、LinkedHashSet、TreeSet)Map集合(HashMap、 Hashtable、 LinkedHashMap、 TreeMap)
collecttions工具类里面有许多方法可以对集合进行操作(substring() sublist())
9:HashMap(允许键为空值、键值会覆盖、默认为无序、值可以为null)、Hashtable(不允许键为空值、线程安全)
Employee e6 = new Employee("b001","那英",250);
//List Vector
//HashMap Hashtable
//map:就是一个键值对,键不能重复,当重复到时候被覆盖!
Map<String,Employee> map = new HashMap<String,Employee>();
// map.put(null, new Employee("cowB", "好开心", 0.0));
map.put(e1.getEmpNo(), e1);
map.put(e2.getEmpNo(), e2);
map.put(e3.getEmpNo(), e3);
map.put(e4.getEmpNo(), e4);
map.put(e5.getEmpNo(), e5);
map.put(e6.getEmpNo(), e6);
10:Map集合中的keySet()、entrySet()
Map<String,Employee> map = new HashMap<String,Employee>();
// map.put(null, new Employee("cowB", "好开心", 0.0));
map.put(e1.getEmpNo(), e1);
map.put(e2.getEmpNo(), e2);
map.put(e3.getEmpNo(), e3);
map.put(e4.getEmpNo(), e4);
map.put(e5.getEmpNo(), e5);
map.put(e6.getEmpNo(), e6);
// map.remove(e6.getEmpNo());
//a)得到左边,便利左边拿右边!
/*Set<String> keys = map.keySet();
for (String key : keys) {
System.out.println(key + ":" + map.get(key));
}
for(Iterator<String> ita=map.keySet().iterator();ita.hasNext();) {
String key = ita.next();
System.out.println(key + ":" + map.get(key));
}
*/
// b)先得到所有实体Set,遍历实体Set,获取建和值
Set<Map.Entry<String,Employee>> all = map.entrySet();
for (Map.Entry<String, Employee> entry : all) {
String key = entry.getKey();
Employee emp = entry.getValue();
System.out.println(key + ":"+emp);
}
/*Vector<String> vector = new Vector<String>();
vector.add("重庆");
vector.add("成都");
vector.add("昆明");
vector.add("南宁");
Enumeration<String> all = vector.elements();
while(all.hasMoreElements()){
String str = all.nextElement();
System.out.println(str);
}*/
Hashtable<String, String> hb = new Hashtable<String, String>();
hb.put("001", "长沙");
hb.put("002", "武汉");
hb.put("003", "郑州");
Enumeration<String> values = hb.elements();
while (values.hasMoreElements()) {
String key = values.nextElement();
System.out.println(key);
}
}