LinkList和map
linklist集合
方法
addFirst()
addLast()
getFirst()
getLast()
removeFirst()
removeLast()
isEmpty()空为true
Vector集合
addElement()等价于arraylist集合的add()
elementAt()..........................................get()
elements().............................................iterator()
hasMoreElements()相当于hasNext()
nextElement()相当于next
Set接口
不可以有重复元素
HashSet()集合
hash表数组和链表的集合
调用add方法自动调用hashcode方法,计算hash值,如果没有,存进去,如果有,利用equals方法进行比较,如果内容相同,舍弃,不同则存进来。
HashSet存储自定义元素
重写equals方法和hashcode方法
LinkedHashSet集合
链表和哈希表的集合(双重链表)
顺序取出
Map接口
HashMap<K,V>;
LinkedHashMap<K,V>;
可以通过键找到对应的值
key不能重复,值可以重复
方法:
get(key):根据key取值
put(key,值):
remove(key);
遍历方法1
获取key的集合
keySet();
keySet()+增强for
keySet()+Iterator
遍历方法2
Entry对象
entrySet();返回Set<Mpa.Entry<K,V>>
对象.getKey();获取key值
对象.getValue();获取value值
entrySet+增强for
entrySet+Iterator
package com.oracle.demo03;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
public class Demo04 {
public static void main(String[] args) {
Map<String,Integer> map=new LinkedHashMap<String,Integer>();
map.put("a",1);
map.put("b",2);
map.put("c",3);
map.put("a",9);
// Set<String> str=map.keySet();
// Iterator<String> it=str.iterator();
// while(it.hasNext()){
// String key=it.next();
// int value=map.get(key);
// System.out.println(key+" "+value);
// }
Set<Map.Entry<String,Integer>> set=map.entrySet();
// for(Map.Entry<String,Integer> entry:set){
// String key=entry.getKey();
// int value=entry.getValue();
// System.out.println(key+" "+value);
//
// }
//获取迭代器对象
Iterator<Map.Entry<String,Integer>> it=set.iterator();
while(it.hasNext()){
Map.Entry<String,Integer> entry=it.next();
String key=entry.getKey();
int value=entry.getValue();
System.out.println(key+" "+value);
}
}
}
浙公网安备 33010602011771号