Java集合类的总结
来源:互联网 发布:南京数据恢复公司 编辑:程序博客网 时间:2024/06/05 13:10
学习Java的同学注意了!!!
学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:589809992 我们一起学Java!
Java语言的java.until包中提供了一些集合类,这些集合类又被称为容器。说到集合就会想到数组,集合类与数组的不同之处是,数组的长度是固定的,集合的长度是可变的;数组用来存放基本数据类型,集合从来存放对象的引用。常用的集合有List集合,Map集合与Set集合,其中List与Set实现了Collection接口,他们的继承关系如下图:
Map接口的常用方法:
Map接口提供了将键 映射到 值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。Map的常用方法如下:
方法返回值功能描述put(key,value)Object向集合中添加指定的key与value的映射关系get(key)Object如果存在指定的键对象,则返回该对象对应的值,否则返回nullcontainsKey(key)boolean如果此映射包含指定键的映射关系,则返回truecontainsValue(value)boolean如果此映射将一个或多个键映射到指定值,则返回truekeySet()Set返回该集合中的所有键对象组成的Set集合values()Collection返回该集合中所有值对象形成的Collection集合size()int返回该集合中所有对象的个数remove(key) 清除该集合中指定键对象的内容clear() 清除该集合中所有对象的内容
写法:
Map方法是不能直接被new出来的,所以想要使用Map方法,就要采用Map中的HashMap。写法为:
Map<String,String> list = new HashMap<String,String>();
下面就举个例子:
public static void main(String[] args) { Map<String,String> list = new HashMap<String,String>(); list.put("zs", "张三家的狗狗"); list.put("lisi","李四家的小狗"); String d = list.get("lisi"); System.out.println(d); Set keys = list.keySet(); Iterator it = keys.iterator(); while(it.hasNext()){ Object obj = it.next(); //System.out.println(obj); Object v = list.get(obj); System.out.println(v); } String s = (String)list.get("zs"); System.out.println(s); System.out.println(list.containsKey("zs")); System.out.println(list.containsValue("hello world")); System.out.println(list.size()); list.remove("zs"); System.out.println(list.size()); list.clear(); System.out.println(list.size()); }
输出结果为:
李四家的小狗李四家的小狗张三家的狗狗张三家的狗狗truefalse210
Collection接口中List的常用方法:
List接口继承了Collection接口,因此包含Collection中的所有方法。但是他还有一些适合于自身的常用方法。如下:
方法返回值功能描述add(int index,Object obj)void用来向集合中的指定索引位置添加对象,集合的索引位置从0开始get(int index)Object用来获取指定索引位置的对象contains()boolean如果列表包含指定的元素,则返回trueindexOf(Object obj)int该方法返回列表中对象第一次出现的索引位置,如果集合中不包含该元素,则返回-1lastIndexOf(Object obj)int该方法返回列表中对象最后一次出现的索引位置,如果集合中不包含该元素,则返回-1set(int index,e element)Object用指定元素替换列表中指定位置的元素,返回以前在指定位置的元素subList(int formIndex,int toIndex)LIst获取从索引formIndex到toIndex之间的元素对象size()int返回该集合中所有对象的个数remove(int index)Object用来移除集合中指定索引位置的对象clear() 清除该集合中所有对象的内容iterator 返回按适当顺序在列表的元素上进行迭代的迭代器。
此时我们需要注意的是:List接口中适合于自身的方法都与索引有关。
写法:
同样的道理,list也是不能被直接new出来的,所以我们也要使用list的ArrayList。写法如下:
List<String> list = new ArrayList<String>();
下面举个例子:
public static void main(String[] args){ List<String> list = new ArrayList<String>(); list.add("helll world"); list.add("good morning"); list.add("merry christmas"); list.add("happy new year"); for(int i=0;i<list.size();i++){ System.out.println(list.get(i)); } }
输出结果为:
helll worldgood morningmerry christmashappy new year
这里是采用索引号来进行遍历输出所有内容的,下面再一个例子来了解一下迭代器iterator及其他内容的使用:
public static void main(String[] args){ List<String> list = new ArrayList<String>(); list.add("吕布"); list.add("赵云"); list.add("典韦"); list.add("关羽"); list.add("张飞"); list.set(4, "马超"); Iterator<String> it = list.iterator(); while(it.hasNext()){ System.out.println(it.next()); } System.out.println(list.size()); Object obj ="吕布"; list.remove(obj); System.out.println(list); list.remove("赵云"); System.out.println(list.size()); System.out.println(list.get(2)); list.clear(); System.out.println(list);}
输出结果为:
吕布赵云典韦关羽马超5[赵云, 典韦, 关羽, 马超]3马超[]
Collection中Set接口的常用方法:
Set集合由Set接口和Set接口的实现类组成。Set接口继承了Collection接口,因此包含了Collection接口的所有方法。如下:
方法返回值功能描述add(Object obj)boolean如果此Set集合中尚未存在指定的元素,则添加此元素get(int index)Object用来获取指定索引位置的对象removeAll(Collection c)boolean在Set集合中移除包含在指定Collection中的元素size()int返回该集合中所有对象的个数remove(Object obj)boolean将指定的参数对象移除集合clear() 清除该集合中所有对象的内容iterator 返回按适当顺序在列表的元素上进行迭代的迭代器。由于Set集合中不允许存在重复值,因此可以使用Set集合中的addAll()方法,将Collection集合添加到Set集合中并除掉重复值。
来个例子:
public static void main(String[] args){ List<String> list = new ArrayList<String>(); list.add("apple"); list.add("banana"); list.add("pear"); list.add("apple"); Set<String> set =new HashSet<String>(); set.addAll(list); Iterator<String> it = set.iterator(); while(it.hasNext()){ System.out.println(it.next()+"\t"); } }
输出结果为:
banana apple pear
学习Java的同学注意了!!!
学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:589809992 我们一起学Java!
- java的集合类总结
- java集合类的总结
- Java集合类的总结
- Java集合类的总结
- java集合类的总结
- Java集合类的总结
- java集合的总结!
- java集合的总结!
- java集合的总结
- java集合的总结
- Java集合的总结
- Java集合的总结
- java集合的总结
- Java 集合的总结
- java集合的总结
- java集合类总结
- java集合类总结
- JAVA集合类总结
- 一个iOS开发者必须掌握的66个知识点,你掌握了多少?
- 求助对话语料哪里找?
- jdbcTemplate
- R语言-大规模优化器(gurobi)
- Fragment与Activity通信
- Java集合类的总结
- java语言基础-学习笔记-java中变量的本质、分类、存储以及生存周期
- Win10锁屏壁纸位置在哪?默认锁屏壁纸怎么提取
- 关于python文件操作
- ArcGIS在线资源集
- Android开发人员不得不收集的代码
- weblogic SSL证书错误
- schema例子
- 第五章 处理器拦截器详解——跟着开涛学SpringMVC