List接口、Set接口、Map接口的方法
一、Collection接口中的方法介绍
- int size();返回此Collection中的元素数
- boolean isEmpty(); 判断是否为空
- boolean containsAll(Collection c);判断形参c所指向的集合中的所有元素是不是已经全部包含在了当前集合中,是true,不是flase
- Iterator iterator();返回能遍历当前集合所有元素的迭代器
- Object[] toArray();容器不是数组,不能通过下标的方式访问容器中的元素,返回一个包含此Collection中所有元素的数组。
- bollean add(Object e); 把e添加到当前集合中
- boolean remove(Object o); boolean addAll(Collection c)
- boolean removeAll(Collection c);
- void clear();
- boolean equals(Object o);
- int hashCode();
二、List接口ArrayList LinkedList
- Object get(int index);
- Object set(oint index, Object element);
- void add(int index, Object element);
- Object remove(int index);
- int indexOf( Object o);
- int lastIndexOf(Object o);
三、Set接口
- 因为Set和List都是继承自Collection接口,所以Set和List中很多方法都是一样的。
- List接口中有add,set,indexOf方法,但Set中只有add方法,没有set,indexOf方法,因为Set是无序不可重复的,不存在某元素具体位置这个概念
四、Map接口
- Object put(Object key,Object value);
- Object get(Object key);
- boolean isEmpty();
- void clear();
- int size();
- boolean containsKey(Object key);
- boolean containsValue(Object value);
注意一个Map的一个Map.Entry接口,其中含有getKey(),getValue方法
(1) Object getKey(): 返回条目的关键字
(2) Object getValue(): 返回条目的值
(3) Object setValue(Object value): 将相关映像中的值改为value,并且返回旧值
此处再说两种图的遍历方法:
Map map = new HashMap();
Irerator iterator = map.entrySet().iterator();
while(iterator.hasNext()) {
Map.Entry entry = iterator.next();
Object key = entry.getKey();
}
Map map = new HashMap();
Set keySet= map.keySet();
Irerator iterator = keySet.iterator;
while(iterator.hasNext()) {
Object key = iterator.next();
Object value = map.get(key);
}
Map map = new HashMap();
Collection c = map.values();
Iterator iterator = c.iterator();
while(iterator.hasNext()) {
Object value = iterator.next();
}
五、Collections类的方法
Collection接口的实现类,比如ArrayList,LinkedList本身并没有提供排序、倒置和查找的方法,这些方法由Collections类来实现,该类有很多 static public 方法,可以直接对Collections接口的实现类进行操作。
- void sort(List); 对List容器内元素进行排序
- void shuffle(List); 对List容器内对象进行随机排序
- void reverse(List); 对List容器内对象进行逆序排序
- rotate(List list,int m)方法的使用(含义:集合中的元素向后移m个位置,在后面被遮盖的元素循环到前面来)
- void fill(List, Object);用一个特定的对象重写整个List容器
- nCopies(int n,Object o)方法的使用(含义:返回大小为n的List,List不可改变,其中的所有引用都指向o)
- enumeration(Collection)方法的使用(含义:为参数生成一个旧式的Enumeration)
- void copy(List dest, List src); 讲src List容器的内容拷贝到dest List容器中
- swap(List list,int i,int j)方法的使用(含义:交换集合中指定元素索引的位置)
- int binarySearch(List ,Object); 对顺序的List容器,采用折半查找的方法查找特定对象
- max(Collection),max(Collection,Comparator)方法的使用(前者采用Collection内含自然比较法,后者采用Comparator进行比较)
- min(Collection),min(Collection,Comparator)方法的使用(前者采用Collection内含自然比较法,后者采用Comparator进行比较)
- indexOfSubList(List list,List subList)方法的使用(含义:查找subList在list中首次出现位置的索引)。
- lastIndexOfSubList(List source,List target)方法的使用与上例方法的使用相同,在此就不做介绍了
- replaceAll(List list,Object old,Object new)方法的使用(含义:替换批定元素为某元素,若要替换的值存在刚返回true,反之返回false)
- list(Enumeration e)方法的使用(含义:返回使用Enumeration生成的ArrayList,用来转换遗留的老代码)
List接口、Set接口、Map接口的方法的更多相关文章
- Java集合框架中Map接口的使用
在我们常用的Java集合框架接口中,除了前面说过的Collection接口以及他的根接口List接口和Set接口的使用,Map接口也是一个经常使用的接口,和Collection接口不同,Map接口并不 ...
- Java集合Map接口与Map.Entry学习
Java集合Map接口与Map.Entry学习 Map接口不是Collection接口的继承.Map接口用于维护键/值对(key/value pairs).该接口描述了从不重复的键到值的映射. (1) ...
- Map接口下的集合和泛型理解
一.Map接口 1. Map接口就是最顶层了,上面没有继承了.Map是一个容器接口,它与前面学的List.Set容器不同的是前面学的这些容器,一次只能传入一个元素,但是Map容器一次可以传入一对元素( ...
- Map接口----Map中嵌套Map
package cn.good.com; import java.util.HashMap; import java.util.Iterator; import java.util.Map; impo ...
- JavaSet接口、唯一元素和Map接口整理
Set接口 1.1 HashSet集合存储数据的结构(哈希表) HashSet集合,采用哈希表结构存储数据,保证元素唯一性的方式依赖于:hashCode()与equals()方法. 哈希表底层,使用的 ...
- 自顶向下理解Java集合框架(三)Map接口
Map基本概念 数据结构中Map是一种重要的形式.Map接口定义的是查询表,或称查找表,其用于储存所谓的键/值对(key-value pair),其中key是映射表的索引. JDK结构中还存在实现Ma ...
- JAVA基础之Map接口
个人理解: 个人感觉Map接口以后会经常用到,可以很清晰地查找某个对象,要熟悉其四种遍历方法.特别注意其键值对的键不能是重复的,有想定义有序存取的话,可以使用LinkedHashMap集合.不过定义自 ...
- Java中的集合(七)双列集合顶层接口------Map接口架构
Java中的集合(七)双列集合顶层接口------Map接口 一.Map接口的简介 通过List接口,我们知道List接口下的集合是单列集合,数据存储是单列的结构.Map接口下是一个键值对(key-v ...
- Java集合中Map接口的使用方法
Map接口 Map提供了一种映射关系,其中的元素是以键值对(key-value)的形式存储的,能够实现根据key快速查找value: Map中的键值对以Entry类型的对象实例形式存在: 建(key值 ...
随机推荐
- maven国内镜像(maven下载慢的解决方法)
Maven是当前流行的项目管理工具,但官方的库在国外经常连不上,连上也下载速度很慢.国内oschina的maven服务器很早之前就关了.今天发现阿里云的一个中央仓库,亲测可用. <mirror& ...
- Logstash学习-配置语法
区段(section) Logstash 用{}来定义区域.区域内可以包括插件区域定义,你可以在一个区域定义多个插件,插件区域内则可以定义键值对设置. 数据类型 Logstash支持少量的数据值类型: ...
- js实现图片预加载
通过 image标签的onload来实现: 实现原理是用过浏览器的缓存来进行 首先进行循环 for(var i=0;i<10;i++){ //每次进行一个new; var oImg = new ...
- 接触Matlab5年一个总结(Matlab要掌握的一些要点 )
阅读目录 前言 Matlab的开发环境与简单介绍 Matlab的常见命令 Matlab的灵魂-矩阵操作 Matlab的.m或.fig的编程与技巧 从大二开始接触到matlab,讲真,这是一个我觉得很良 ...
- 向STM32 CUBE MX 生成的工程里移植stemwin
我参考这个文章做的: http://bbs.armfly.com/read.php?tid=1678 这次添加的是没有os的版本 另外跟用不用hal库没关系 1. keil自带了emwin 2. 用c ...
- ASP.NET Core 在 Swagger UI 中显示自定义的 Header Token
Swagger 是个好东西,对于前后端分离的网站来说,不仅是提高前后端开发人员沟通效率的利器,也大大方便了后端人员测试 API.有时候,API 中可能需要在 Header 中设置认证参数,比如 aut ...
- placeholder修改字体和颜色
textField.placeholder = @"username is in here!"; [textField setValue:[UIColor redColor] fo ...
- 【前端】我的Gulp配置
2. gulp + browserify /** * File Name: gulpfile.js */ // 引入 gulp var gulp = require('gulp'); // 引入组件 ...
- Python 和 R 数据分析/挖掘工具互查
如果大家已经熟悉python和R的模块/包载入方式,那下面的表查找起来相对方便.python在下表中以模块.的方式引用,部分模块并非原生模块,请使用 pip install * 安装:同理,为了方便索 ...
- Java生成带小图标的二维码-google zxing 工具类
近期一直忙于开发微信商城项目,应客户要求,要开发个有图标的二维码.经过两次改版,终于实现了该功能(第一次没有小图标,这次才整合好的),如下是完整代码 . 该代码使用Java7开发,另外使用 core- ...