特点:存储对象;长度可变;存储对象的类型可不同;
(add(index, element)、add(index, Collection)、remove(index)、 set(index,element)、get(index)、subList(from, to)、listIterator())
ArrayList:底层是数组结构,查询快,增删慢,不同步。LinkedList:底层是链表结构,增删快,查询慢,不同步 addFist();addLast() getFirst();getLast() removeFirst();removeLast() 获取并删除元素,无元素将抛异常:NoSuchElementException 替代的方法(JDK1.6): offerFirst();offerLast(); peekFirst();peekLast();无元素返回null pollFirst();pollLast();删除并返回此元素,无元素返回null Vector:底层是数组结构,线程同步,被ArrayList取代了 注:了对于判断是否存在,以及删除等操作,以依赖的方法是元素的hashCode和equals方法 ArrayList判断是否存在和删除操作依赖的是equals方法第一种
Set<K> keySet()取出Map集合中的所有键放于Set集合中,然后再通过键取出对应的值
Set<String> keySet = map.keySet();Iterator<String> it = keySet.iterator();while(it.hasNext()){String key = it.next();String value = map.get(key);//….}第二种
Set<Map.Entry<K,V>> entrySet()取出Map集合中键值对的映射放于Set集合中,然后通过Map集合中的内部接口,然后通过其中的方法取出
Set<Map.Entry<String,String>> entrySet = map.entrySet();Iterator<Map.Entry<String,String>> it = entrySet.iterator();While(it.hasNext()){ Map.Entry<String,String> entry = it.next(); String key = entry.getKey(); String value = entry.getValue(); //…… }用于操作数组对象的工具类,全为静态方法
asList():将数组转为list集合 好处:可通过list集合的方法操作数组中的元素:isEmpty()、contains()、indexOf()、set()a. 弊端:数组长度固定,不可使用集合的增删操作。 如果数组中存储的是基本数据类型,asList会将数组整体作为一个元素存入集合 集合转为数组:Collection.toArray(); b.好处:限定了对集合中的元素进行增删操作,只需获取元素
新闻热点
疑难解答