java入门之collection集合笔记(35)(代码片段)

不会写代码的程序 不会写代码的程序     2022-12-29     211

关键词:

一、 集合类体系结构

在接下来的学习中,会先学接口,在使用的时候会使用具体的实现类
在List接口下,之前学习了ArrayList集合,想回顾的请点击ArrayList集合
在集合的学习中主要学习List接口下的LinkedList、Set接口下的HashSet和TreeSet、 Map接口下的HashMap
接下来的先讲讲Collection接口

二、Collection集合的概述

想学习Collection集合接口,我们可以通过查询帮助文档去学习
通过查询帮助文档
public interface Collection extends Iterable
集合层次结构中的根界面。 集合表示一组被称为其元素的对象。 一些集合允许重复元素,而其他集合不允许。 有些被命令和其他无序。 JDK不提供此接口的任何直接实现:它提供了更具体的子接口的实现,如Set和List 。 该界面通常用于传递集合,并在需要最大的通用性的情况下对其进行操作。
也就是说Collection这接口并没有具体的实现类,这个想要实现,必须通过Set或者List的实现类来实现对象

创建Collection集合对象

  • 多态的方式
  • 具体的实现类ArrayList

package MyCollection;

import java.util.ArrayList;
import java.util.Collection;

public class CollectionDemo 
    public static void main(String[] args) 
        //创建Collection对象
        Collection<String> c = new ArrayList<>();

        //添加元素 boolean add(E e)
        c.add("Hello");
        c.add("World");

        //输出集合
        System.out.println(c);
    


通过观察输出结果我们可以看到,直接输出打印c并没有输出包名和c的地址,所以可见,Collection接口已经将toString重写

三、Collection集合常用方法

方法名说明
boolean add(E e)添加元素
boolean remove(Object o)从集合中移除指定元素
void clear()清空集合中的元素
boolean contains(Object o)判断集合中是否存在指定元素
boolean isEmpty( )判断集合是否为空
int size( )集合长度,也就是集合中元素的个数

1、add——添加元素

package MyCollection;

import java.util.ArrayDeque;
import java.util.Collection;

public class AddDemo 
    public static void main(String[] args) 
        Collection<String> c = new ArrayDeque<String>();

        //添加元素
        System.out.println(c.add("Hello"));
        System.out.println(c.add("World"));

        System.out.println(c);
    

调用add方法会返回true
那么是不是一定都是返回true呢?
答案是肯定的
通过查询add方法的源码

    public boolean add(E e) 
        addLast(e);
        return true;
    

可以看到,无论添加什么内容,最后都会return true

2、remove——移除指定元素

package MyCollection;

import java.util.ArrayDeque;
import java.util.Collection;

public class RemoveDemo 
    public static void main(String[] args) 
        Collection<String> c = new ArrayDeque<String>();

        //添加元素
        c.add("Hello");
        c.add("World");
        System.out.println(c);

        //删除存在的元素
        System.out.println(c.remove("Hello"));
        //删除不存在的元素
        System.out.println(c.remove("java"));

        System.out.println(c);
    


删除存在的元素会返回true, 删除不存在的元素会返回false

3、clear——清空集合中所有元素

package MyCollection;

import java.util.ArrayList;
import java.util.Collection;

public class ClearDemo 
    public static void main(String[] args) 
        Collection<String> c = new ArrayList<String>();
        
        //添加元素
        c.add("Hello");
        c.add("World");

        System.out.println(c);

        //清空
        c.clear();

        System.out.println(c);
    


4、contains——判断集合是否存在某个元素

package MyCollection;

import java.util.ArrayList;
import java.util.Collection;

public class ContainsDemo 
    public static void main(String[] args) 
        Collection<String> c = new ArrayList<String>();
        
        c.add("Hello");
        c.add("World");

        System.out.println(c.contains("Hello"));
        System.out.println(c.contains("java"));
    


5、 isEmpty——判断集合是否为空

package MyCollection;

import java.util.ArrayList;
import java.util.Collection;

public class IsEmptyDemo 
    public static void main(String[] args) 
        Collection<String> c = new ArrayList<String>();

        System.out.println(c.isEmpty());

        c.add("Hello");

        System.out.println(c.isEmpty());
    


6、size——集合长度

package MyCollection;

import java.util.ArrayList;
import java.util.Collection;

public class SizeDemo 
    public static void main(String[] args) 
        Collection<String> c = new ArrayList<String>();
        
        c.add("Hello");
        c.add("World");

        System.out.println(c.size());
    



四、Collection集合的遍历

集合的遍历,顾名思义就是将集合的各个元素都按顺序读取一遍,可以将它们输出,这操作和数组的遍历大同小异,只不过需要集合要实现该功能需要调用一些特定的方法
在集合的遍历中,需要用到一个新东西——迭代器,集合的专门遍历方式

  • Iterator < E > iterator( ):返回该集合中元素的迭代器,通过集合的iterator()方法得到
  • 迭代器是通过集合的iterator()方法得到的,所有我们说它是以来集合而存在的

Iterator中常用方法

  • E next():返回迭代中的下一个元素
  • boolean hasNext():如果迭代具有更多元素,则返回true,常用来防止遍历出界

package MyCollection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class IteratorDemo 
    public static void main(String[] args) 
        //创建集合对象
        Collection<String> c = new ArrayList<String>();

        //添加元素
        c.add("Hello");
        c.add("World");

        //创建该集合的迭代器
        Iterator<String> it = c.iterator();
        while (it.hasNext())//防止元素遍历出界
            //输出每一个元素
            System.out.println(it.next());
        
    

接下来的其他集合的接口说明将会在后面的文章更新,敬请期待!!!!

java入门之数据结构(set集合)笔记(36)(代码片段)

JAVA数据结构之Set集合一、Set集合概论和特点Set集合特点不包含重复元素的集合没有带索引的方法,所以不能使用普通for循环遍历Set集合是一个接口,不能实体化,所以若要实体化,则需要找到它的实现类——HashSe... 查看详情

阿花宝宝java基础笔记之集合框架

基本接口:Collection 接口:List 实现类:ArrayListLinkedList 接口:Set(唯一,无序) 实现类:HashSet(哈希)TreeSetMap接口:Map 实现类:HashMap---------------------------------------------------------------------- 查看详情

java集合入门和深入学习,看这篇就差不多了

...、集合入门总结集合框架:Java中的集合框架大类可分为Collection和Map;两者的区别:1、Collection是单列集合;Map是双列集合2、Collection中只有Set系列要求元素唯一;Map中键需要唯一,值可以重复3、Collection的数据结构是针对元素的... 查看详情

java基础之collection

Java基础之Collection1.collection集合的概述collection集合的概述集合是java中用来存储数据的容器collection是java集合中按照存储结构分类的单列集合:java.util.CollectionCollection是单列集合的根接口,用于存储一系列符合规则的数据。Collectio... 查看详情

java集合之collection架构

Java集合之Collection架构首先,我们对Collection进行说明。下面先看看Collection的一些框架类的关系图:  Collection是一个接口,它主要的两个分支是:List 和 Set。List和Set都是接口,它们继承于Collection。List是有序的队列,Lis... 查看详情

java集合之collection接口

java的集合分为三大接口,分别是Collection,Map,Iterator,集合接口和类在java.util包中,此次主要介绍三大接口之一的Collection接口。  一些Collection允许有重复元素,而另一些则不允许,一些Collection是有序的,另一些则是无序的。Col... 查看详情

java集合之collection概述(代码片段)

目录一、前言二、常见的集合概览图三、Collection集合1.Collection集合常用方法2.Collection集合之迭代器迭代器介绍迭代器常用方法:一、前言集合在Java中的作用是显而易见的,他可以存储我们的信息,可以实现增删减改... 查看详情

java之collection集合常见数据结构list和泛型

目录​​集合概述​​​​总结​​​​Collection集合的体系特点​​​​总结​​​​Collection集合常用API​​​​Collection集合的遍历方式​​​​方式一:迭代器​​​​总结​​​​方式二:foreach/增强for循环​​​​方式... 查看详情

java学习笔记5.1.2集合-collectiont接口

文章目录零、本讲学习目标一、Collection接口(一)Collection接口概述(二)Collection接口API文档(三)Collection接口结构图(四)Collection接口常用方法(五)Collection接口的子接口二、声明集合变量零、本讲学习目标了解Collection接... 查看详情

java学习入门-05-集合浅析

集合数据结构体系框架Collection接口是List/Set/Queue接口的父接口,其中定义的常用的操作方法有(注意此处笔记不完整,演示代码没有导包):添加功能?i.booleanadd(objectobj)添加一个元素?ii.booleanaddAll(Collectionc)将集合c的全部元素添... 查看详情

夜斗大数据之java篇:collection接口中常用方法(代码片段)

...习打卡:day02笔记:动力节点一:关于java.util.Collection1、Collection中能存放什么元素?没有使用泛型之前,Collection中可以存储Object中所有子类型使用泛型之后,Collection中只能存储某个具体的类型2、Collection... 查看详情

java集合进阶之collection单列集合(set)(代码片段)

...)总结前言    Hello!上一期我大致讲解了关于Collection单列集合以及它的子接口Lis 查看详情

java集合系列02之collection架构

...http://www.cnblogs.com/skywang12345/p/3308513.html概要首先,我们对Collection进行说明。下面先看看Collection的一些框架类的关系图:Collection是一个接口,它主要的两个分支是:List 和 Set。List和Set都是接口,它们继承于Collection。List是... 查看详情

java学习笔记之java如何快速入门

什么是java?java是一种高级计算机语言,由SUN公司(现已经被Oracle公司收购)在1995年5月推出的一种可以编写跨平台的应用软件。SUN公司将java划分为三个技术平台JavaSE--标准版,主要以开发普通桌面和商务应用程序。JavaSE是三个... 查看详情

java集合学习笔记:collection(代码片段)

Java集合学习笔记:CollectionUML简介方法和说明JDK8新增`default`方法参考资料UML简介Collection表示包含了一组元素的对象,它定义了一系列用来折腾这些元素的方法。给徒子徒孙们立好了规矩。通常不直接实现这个接口&#... 查看详情

java之map接口

一。collection与map集合的区别1.collection集合中的元素为孤立存在,map集合中的预算为成对存在(key键--vlaue值)2.collection集合为单列集合,map集合为双列集合3.collection集合中有重复的元素,也可以没有重复的元素,map集合中key值不... 查看详情

java基础之容器集合(collection和map)(代码片段)

目录前言一.Collection集合      1.1List集合1.1.1ArrayList集合1.1.2LinkedList集合1.2Set集合1.2.1HashSet集合HashSet集合保证元素唯一性源码分析:1.2.2TreeSet集合比较器排序Comparator的使用: 二.Map集合 2.1Map集合的概述与特点2.2Map集合的获... 查看详情

java之集合

1.Collection集合集合是我们Java开发中很重要的一部分,今天我们初步与大家探讨集合的基础知识,首先我们介绍集合的整体体系架构。1.1集合体系结构​集合类的特点​ 提供一种存储空间可变的存储模型,存储的数据容量可以随... 查看详情