Java集合 您所在的位置:网站首页 blood的用法 Java集合

Java集合

2023-03-15 14:45| 来源: 网络整理| 查看: 265

一、Java的集合体系结构 Java的集合分为单列集合(Collection)和双列集合(Map)。 单列集合依次只添加一个数据,双列集合依次添加一对数据(两个数据)。 在这里插入图片描述 说明:(1)Vector已被淘汰,知道它的存在即可。 (2)上图中红色的圈表示接口(不能直接创建对象,但可以将创建得对象赋给它,即使用多态),蓝色的圈表示类。

Collection是单列集合得祖宗接口,它的功能是全部单列集合都可以继承使用。 List系列集合:添加元素是有序(存和取得顺序一致)、可重复、有索引。 Set系列集合:添加的元素是无序(存和取得顺序不一定一致)、不重复、无索引。

Collection接口中得方法: 在这里插入图片描述 1.添加元素add() 如果往List系列集合中添加元素,那么add()方法必定返回true;如果往Set系列集合中添加元素,若当前添加元素不存在,方法返回true,表示添加成功,若当前添加元素已经存在,方法返回false,表示添加失败。 在这里插入图片描述 2.删除元素remove() 注意:因为Collection中定义的是共性的方法,所以此时不能通过索引进行删除,只能通过元素的对象进行删除。 若删除的元素不存在remove()方法返回值为false,若存在则返回值为true.

Collection coll = new ArrayList(); coll.add("aaa"); coll.add("bbb"); coll.add("ccc"); coll.remove("aaa");

3.contains()方法是依赖equals()方法进行判断是否存在的,所以,如果集合中存储的是自定义对象,也想通过contains()方法来判断是否存在,那么在javabean类中,一定要重写equals()方法。

二、Collection的遍历方式 1.迭代器遍历(迭代器不依赖于索引) 迭代器在java中的类是Iterator,迭代器是集合专用的遍历方式。 在这里插入图片描述 代码实现:

//获取一个迭代器对象 Iterator it = list.iterator();//list为ArrayList对象 while(it.hasNext()){ String str = it.next(); System.out..println(str); }

注意:(1)如果说迭代器it.hasNext()返回为false,即迭代器指向的位置后面无元素,再调用it.next()会报错NoSuchElementException。在使用时hasNext()与next()方法总是配套使用的。 (2)迭代器遍历完毕,指针不会复位。第二次遍历需要再创建一个新的迭代器。 (3)迭代器遍历时,不能用集合的方法进行增加或删除。

2.增强for遍历 增强for的底层就是迭代器,为了简化迭代器的代码书写的。所有的单列集合和数组才能用增强for进行遍历。 在这里插入图片描述

Collection coll = new ArrayList(); coll.add("aaa"); coll.add("bbb"); coll.add("ccc"); //打印集合中的所有元素 for(String s:coll) System.out.println(s);

注意:在使用增强for遍历时,不能改变遍历的元素; 在这里插入图片描述 上图中的代码并不会把集合中的元素都改变为"q",集合仍然为原来的值。

3.Lambda表达式进行遍历(利用forEach()方法)

Collection coll = new ArrayList(); coll.add("aaa"); coll.add("bbb"); coll.add("ccc"); //匿名内部类形式 coll.forEach(new Consumer(){ @Override public void accept(String s){ //打印输出 System.out.println(s); } } ); //使用Lambda表达式 coll.forEach(s->System.out.println(s));

二、List系列集合 Collection的方法List都继承了,List集合因为有索引,所以多了很多索引操作的方法。 在这里插入图片描述

三、LinkedList集合 底层数据结构是双链表,查询慢,增删快,但是如果操作的是首尾元素,速度也是极快的。 在这里插入图片描述 在这里插入图片描述 注意:上图中的方法眼熟就行,实际运用中用的不多。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有