Map集合
一、Map集合概述
Map集合双列集合:分别存储 键 和 值 键理解为属性名 value属性值
键绝对是独一无二的 一般来说键:String 值:Object
Map<String,Object> map = new HashMap<String,Object>();
map.put("1001", "张三1");//添加元素
map.put("1002", "张三2");
map.put("1003", "张三3");
System.out.println(map);
System.out.println(map.get("1002"));//获取指定键 对应的值
System.out.println(map.size());
二、如何遍历一个map集合:
1.将其转成Set集合
Set<String> set = map.keySet();//将map集合中的键 全部转成set集合
System.out.println(set);
for(String s :set) {
System.out.println(map.get(s));
}
三、使用3种方式 遍历集合的效率
import java.util.LinkedList;
import java.util.List;
public class Test8 {
public static void main(String[] args) {
List<Integer> list = new ArrayList<Integer>();
for(int i = 1; i<=10000000;i++) {
list.add(i);
}
System.out.println("准备完毕!!!!!!!!!!");
// 遍历集合的效率
long l1 = System.currentTimeMillis();
for(int i = 0 ;i<list.size();i++) {
if(i==9999999) {
System.out.println("111222");
}
}
long l2 = System.currentTimeMillis();
System.out.println("普通for循环的遍历效率为" + (l2-l1) );//7
long l3 = System.currentTimeMillis();
for(Integer i : list) {
if(i==9999999) {
System.out.println("111222");
}
}
long l4 = System.currentTimeMillis();
System.out.println("增强for循环的遍历效率为" + (l4-l3) );//35
long l5 = System.currentTimeMillis();
//任何集合都可以通过额外一个知识点: Iterator(迭代器)
Iterator<Integer> it = list.iterator();
while(it.hasNext()) {//是否还有下一个元素
if(it.next()==99999999) {
}
}
long l6 = System.currentTimeMillis();
System.out.println("迭代器循环的遍历效率为" + (l6-l5) );//23
}
}