java集合框架
集合框架
ArrayList
ArrayList
arraylist.add(1.0)单纯的add表示从结尾加入元素arraylist.size()求出所含元素的个数arraylist.remove(1)删去第1个元素,注意计数从0开始arraylist.remove(arraylist.size() - 1)删去最后一个元素arraylist.add(0, 1.8888)在第0个位置 加入 1.8888这个元素arraylist.set(0, 9.0)把第0个位置这个元素 改为 9.0Collections.sort(arraylist)如果arraylist不是抽象类型,则支持排序arraylist.get(i)得到第i个位置的元素值,注意从0开始计数。
HashMap
HashMap
put()对外提供接口,让HashMap对象可以通过put()将“key-value”添加到HashMap中。若要添加到HashMap中的键值对对应的key已经存在HashMap中,则找到该键值对;然后新的value取代旧的value,并退出!putAll()将全部元素都添加到HashMap中。get()获取key对应的value。entrySet()、values()、keySet()3个的原理类似,这里以entrySet()为例来说明。entrySet()的作用是返回“HashMap中所有Entry的集合”,它是一个集合。containsKey()判断HashMap是否包含key。containsValue()判断HashMap是否包含“值为value”的元素。remove()删除“键为key”元素。clear()清空HashMap。它是通过将所有的元素设为null来实现的。
HashSet常用方法总结:
HashSet
hashset.add(1)正确理解:在hashset中插入元素“1”,位置不确定!错误理解:单纯的add表示从结尾加入元素;hashset.size()求出所含元素的个数hashset.remove(1)删去“1”这个元素hashset.remove("asd")如果没有’asd’这个元素则remove什么都不做
Collections工具类
- sort(Collection)
- reverse()
- shuffle(Collection)
- fill(List list,Object o)
- copy(List m,List n)
- min(Collection),min(Collection,Comparator)
- max(Collection),max(Collection,Comparator)
- indexOfSubList(List list,List subList)
- lastIndexOfSubList(List source,List target)
- rotate(List list,int m)
- swap(List list,int i,int j)
- binarySearch(Collection,Object)
- replaceAll(List list,Object old,Object new)
Collection接口
boolean add(Object obj):添加一个元素void clear():移除collection中所有元素(集合还在)boolean contains(Object obj):判断对象是否存在集合中boolean remove(Object obj):移除集合中指定的元素(删除第一个遇到的元素)int size():返回集合中元素的个数Object[] toArray():把集合中的元素转成数组中的元素(集合转成数组)
Iterator 迭代器
boolean hasNext():判断集合中是否还有元素可以迭代next():获取出可以迭代的下一个元素void remove():从迭代器指向的集合中移除迭代器返回的最后一个元素
LinkedList 集合
void addFirst(E e):将指定元素插入链表的开头void addLast(E e):将指定元素插入链表的结尾E getFirst():返回链表的第一个元素E getLast():返回链表的最后一个元素E removeFirst():移除并返回链表的第一个元素E removeLast():移除并返回链表的最后一个元素E pop(E e):取出链表栈顶元素void push(E e):将元素推入此链表所示的堆栈boolean isEmpty():判断链表中是否有元素