List、Set、Map集合大杂烩
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包括指定的元素,则返回 true
isEmpty(); // 假设set不包括元素,则返回 true
iterator(); // 返回包括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中是否包括指定的key
entrySet(); //返回包括Map中全部元素的set集合
get(Object key); // 返回指定键所映射的值
isEmpty(); // 假设map不包括元素。则返回 true
keySet(); // 返回此映射中包括的键的Set视图
put(K key, V value); //加入键值对
remove(Object key); // 移除指定的key
size(); //返回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
List、Set、Map集合大杂烩的更多相关文章
- Java版本:识别Json字符串并分隔成Map集合
前言: 最近又看了点Java的知识,于是想着把CYQ.Data V5迁移到Java版本. 过程发现坑很多,理论上看大部分很相似,实践上代码写起来发现大部分都要重新思考方案. 遇到的C#转Java的一些 ...
- Java常用的几种集合, Map集合,Set集合,List集合
Java中 Object是所有类的根 Java集合常用的集合List集合.Set集合.Map集合 Map接口常用的一些方法 size() 获取集合中名值对的数量 put(key k, value v ...
- Map集合
1:Map (1)将键映射到值的对象. 一个映射不能包含重复的键:每个键最多只能映射到一个值. 键值对的方式存在 (2)Map和Collection的区别? A:Map 存储的是键值对形式的元素,键唯 ...
- MyBatis的一系列问题的处理(遍历Map集合和智能标签和属性和字段不一样的解决办法 和sql片段)(三)
一.字段名与属性名(数据库的名字)不一样怎么办? 方案一:在小配置中配置一个resultMapper <!--方案一:resultMapper 字段名与属性名不一致 --> <res ...
- Map集合及与Collection的区别、HashMap和HashTable的区别、Collections、
特点:将键映射到值的对象,一个映射不能包含重复的键,每个键最多只能映射到一个值. Map集合和Collection集合的区别 Map集合:成对出现 (情侣) ...
- java://Comparator、Comparable的用法(按照要求将map集合的键值对进行顺序输出)
import java.util.*; public class Person implements Comparable<Person>//使Person的属性具有比较性 { priva ...
- Java集合类学习笔记(Map集合)
Map用于保存具有映射关系的数据,因此Map集合里保存着两组数据,一组用于保存Map的key,一组用于保存key所对应的value. Map的key不允许重复. HashMap和Hashtable都是 ...
- java学习第18天(map集合)
Map集合是将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值. 存储的是键值对形式的元素,键唯一,值可以重复,有点类似于数据库中的主键加数据.主要功能有: A:添加功能 put ...
- Map集合 总结
(本人第一次写博客,部分内容有参照李刚老师的疯狂java系列图书,如有遗漏错误,请多指教,谢谢.) Java的集合类可分为Set.List.Map.Queue,其中Set.List.Queue都有共同 ...
随机推荐
- 完美解决“find: 路径必须在表达式之前:”
使用find命令查找文件的时候会有如题的提示,只需略作修改即可.两种方法: ①可cd到其它目录再查找(当前目录下存在要查找的目标文件时会出现此类错误,换到其它目录下再执行相同的命令即可): ②如果目标 ...
- Vue使用中遇到问题汇总(一)32个
1.安装一些需要编译的包:提示没有安装python.build失败等 因为一些 npm 的包安装需要编译的环境,mac 和 linux 都还好,大多都齐全 .window 用户依赖 visual st ...
- Maven Web项目配置Mybatis出现SqlSessionFactory错误的解决方案
一.错误现象 严重: Context initialization failed org.springframework.beans.factory.BeanCreationException: Er ...
- 【云计算】CloudFoundry参考资料
开源PaaS平台 Cloud Foundry:http://www.oschina.net/p/cloud+foundry/ 详解CloudFoundry中各个组件的作用:http://www.cst ...
- hdu4587 TWO NODES
问一个无向图中去掉任意两点后剩下的连通分量的个数最大值 枚举第一个删去的点,在剩下的子图中求割点 注意,剩下的子图可能不连通,那么就要对每个连通块求割点 计算删去一个点后剩余连通分量个数 left 的 ...
- HDUOJ A Mathematical Curiosity 1017
此题不难就是输出格式麻烦 #include<stdio.h> int main(){ int T; scanf("%d",&T); ...
- excel宏调用webservice使用存储过程同步excel数据的方法
excel宏: 随后更新 webservice: 1.创建空应用程序 2.加入web服务 3.创建数据库訪问类库DataHelper sqlserver: 创建数据同步的存储过程 下面是一些须要的代码 ...
- 将本地jar包添加到maven中
将需要引入的jar包拷贝到maven项目的WEB-INF/lib中 在pom.xml中配置如下: <dependency> <groupId>com.xxxxx.union&l ...
- Java实现MySQL图片存取操作
转载自:http://blog.csdn.net/thc1987/article/details/3972201 存入操作 /* ---------------表结构------------ 表名:s ...
- CEdit自动换行和状态栏添加
CEdit自动换行在对话框的属性中是可以直接设置的. Auto HScroll设置为False Auto VScroll设置为True Mulitline设置为True Want Return设置为T ...