Collection中的常用功能(ArrayList,LinkedList,HashSet,TreeSet)
boolean add(Object e): 向集合中添加元素
void clear():清空集合中所有元素
boolean contains(Object o):判断集合中是否包含某个元素
boolean isEmpty():判断集合中的元素是否为空
boolean remove(Object o):根据元素的内容来删除某个元素
int size():获取集合的长度
Object[] toArray():能够将集合转换成数组并把集合中的元素存储到数组中
迭代器遍历集合
Iterator iterator = list.iterator();
while (iterator.hasNext())
{
System.out.println(iterator.next());
}
//list.forEach(System.out::println); lambada表达式b格更高
LinkedList特有功能
LinkedList底层使用的是链表结构,因此增删快,查询相对ArrayList较慢
void addFirst(E e) :向链表的头部添加元素
void addLast(E e):向链表的尾部添加元素
E getFirst():获取链头的元素,不删除元素
E getLast():获取链尾的元素,不删除元素
E removeFirst():返回链头的元素并删除链头的元素
E removeLast():返回链尾的元素并删除链尾的元素
特殊记两个不一样的
Queue jdk用linkedList实现了(先进先出)
Queue queue = new LinkedList<>();
boolean offer(E e);入队操作
poll(); 出队
Stack 栈 (先进后出)
E push(E item)入栈
synchronized E pop() 出栈
synchronized int size() 元素个数
boolean isEmpty() 是否为空
synchronized E peek() 查看栈顶元素(不出栈只查看)
如果要从栈顶->栈底查看元素需要
for(int i = stack.size()-1;i>=0;i--)
System.out.println(stack.get(i));
Collections工具类中常用方法:
static void swap(List list, int i, int j) :将指定列表中的两个索引进行位置互换
static void sort(List<T> list) :按照列表中元素的自然顺序进行排序
static void shuffle(List list):随机置换
static void reverse(List list); 反转
static void copy(List dest, List src) :是把源列表中的数据覆盖到目标列表 注意:目标列表的长度至少等于源列表的长度
static int binarySearch(List list, Object key) 使用二分查找法查找指定元素在指定列表的索引位置
Map常用功能
A:映射功能:
V put(K key, V value) :以键=值的方式存入Map集合
B:获取功能:
V get(Object key):根据键获取值
int size():返回Map中键值对的个数
C:判断功能:
boolean containsKey(Object key):判断Map集合中是否包含键为key的键值对
boolean containsValue(Object value):判断Map集合中是否包含值为value键值对
boolean isEmpty():判断Map集合中是否没有任何键值对
D:删除功能:
void clear():清空Map集合中所有的键值对
V remove(Object key):根据键值删除Map中键值对
E:遍历功能:
Set<Map.Entry<K,V>> entrySet():将每个键值对封装到一个个Entry对象中,再把所有Entry的对象封装到Set集合中返回
Set<K> keySet() :将Map中所有的键装到Set集合中返回
Collection<V> values():返回集合中所有的value的值的集合
遍历map
Set<String> set =map.keySet();
for(String s: set)
System.out.println(s+","+map.get(s));
Set<Map.Entry<String,String>> entry = map.entrySet();
for(Map.Entry<String,String> entry1:entry)
System.out.println(entry1.getKey()+","+entry1.getValue());