博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
List、Set、Map集合大杂烩
阅读量:6180 次
发布时间:2019-06-21

本文共 2064 字,大约阅读时间需要 6 分钟。

java集合主要分三种:list、set、map;当中list和set都继承自Collection接口,两者最大差别是set不能包括反复元素

list的经常使用实现类有:

  • ArrayList:大小可变数组的实现
  • LinkedList:链接列表实现,元素增删快,查找慢
  • Vector:线程安全的大小可变数组的实现

list经常使用的方法有:

add(E e); // 向列表的尾部加入指定的元素clear(); // 从列表中移除全部元素contains(Object o); // 推断列表中是否包括指定元素get(int index); // 返回列表中指定位置的元素。

isEmpty(); // 假设列表不包括元素,则返回 true iterator(); // 返回包括列表中全部元素的迭代器 remove(int index); // 移除列表中指定位置的元素 set(int index, E element); // 用指定元素替换列表中指定位置的元素 size(); // 返回列表中的元素数 toArray(); //返回包括列表中全部元素的数组

set的经常使用实现类有:

  • HashSet:基于hash算法的set集合
  • LinkedHashSet:基于hash和链表算法的set集合
  • TreeSet:基于二叉树算法的可排序set集合

set经常使用的方法有:

add(E e); // 假设set中尚未存在指定的元素,则加入此元素addAll(Collection c); // 假设set中没有指定 collection 中的全部元素。则将其加入到此set中(交集运算)clear(); // 移除此set中的全部元素contains(Object o); // 假设set包括指定的元素,则返回 trueisEmpty(); // 假设set不包括元素,则返回 trueiterator(); // 返回包括set中全部元素的的迭代器remove(Object o); // 假设set中存在指定的元素,则将其移除removeAll(Collection c); //移除set中那些包括在指定 collection 中的元素(差集运算)retainAll(Collection c); //仅保留set中那些包括在指定 collection 中的元素(并集运算)size(); // 返回set中的元素数toArray(); //返回包括set中全部元素的数组

map的经常使用实现类有:

  • HashMap:基于hash的map实现
  • Hashtable:基于hash。线程安全的map实现

map经常使用的方法有:

clear(); // 从此映射中移除全部映射关系containsKey(Object key); //推断map中是否包括指定的keyentrySet(); //返回包括Map中全部元素的set集合get(Object key); // 返回指定键所映射的值isEmpty(); // 假设map不包括元素。则返回 truekeySet(); // 返回此映射中包括的键的Set视图put(K key, V value); //加入键值对remove(Object key); // 移除指定的keysize(); //返回map中键值对总数values(); // 返回此映射中包括的值的 Collection 视图

Arrays

  • asList(T… a); // 将指定的数组转换成list对象
  • binarySearch(…); // 使用二分搜索法找指定的对象。使用前须先对数组进行排序
  • equals(…); // 比較两个数组是否一致
  • fill(…); //用指定值替代数组中的全部元素
  • sort(…); // 对数组进行排序

复制数组能够使用 System.arraycopy(…)方法

Iterator

  • hasNext(); // 假设仍有元素能够迭代。则返回 true
  • next(); // 返回迭代的下一个元素
  • remove(); // 移除迭代器返回的最后一个元素

Collections

  • sort(…); // 对指定集合进行排序
  • reverse(…); // 翻转集合的顺序
  • shuffle(…); // 对指定集合进行位置的随机置换
  • fill(…); // 用指定值替代集合中的全部元素
  • max(…); // 返回集合中最大的元素
  • min(…); // 返回集合中最小的元素
  • frequency(…); // 返回指定值在集合中出现的次数
  • synchronizedList(…)、synchronizedSet(…)、synchronizedMap(…); //返回支持同步的List、Set或Map
  • unmodifiableList(…)、unmodifiableSet(…)、unmodifiableMap(…);
    //返回不可改动的List、Set或Map

转载地址:http://nvbda.baihongyu.com/

你可能感兴趣的文章
BCGControlBar教程:如何将MFC控件的BCGControlBarBCGSuite添加到对话框中
查看>>
深入理解Java8 Lambda表达式
查看>>
Java集合框架面试问题集锦
查看>>
Java每天10道面试题,跟我走,offer有!(六)
查看>>
四种途径提高RabbitMQ传输数据的可靠性(二)
查看>>
c语言实现多态
查看>>
Linux 在 TOP 命令中切换内存的显示单位
查看>>
浏览器的加载与页面性能优化
查看>>
Java基础学习总结(5)——多态
查看>>
shell: demo
查看>>
使用vc+如何添加特殊字符的控件(创世纪篇)
查看>>
Linux下的常用信号
查看>>
3.UIImageView+category
查看>>
2.UIView+category
查看>>
Android ImageLoader使用
查看>>
LDTP
查看>>
StringUtils工具类的常用方法
查看>>
linux下VNC安装与配置
查看>>
URL编码
查看>>
光模块及光纤知识(含分类,常用类型介绍)
查看>>