集合概述

集合到底是什么呢?

  • 集合:集合是java中提供的一种容器,可以用来存储多个数据。

集合和数组既然都是容器,它们有啥区别呢?

  • 数组的长度是固定的。集合的长度是可变的。
  • 数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。

集合框架

JAVASE提供了满足各种需求的API,在使用这些API前,先了解其继承与接口操作架构,才能了解何时采用哪个类,以及类之间如何彼此合作,从而达到灵活应用。
集合按照其存储结构可以分为两大类,分别是单列集合java.util.Collection和双列集合java.util.Map本文主要讲Collection集合,后续再补充Map集合。

  • Collection:单列集合类的根接口,用于存储一系列符合某种规则的元素,它有两个重要的子接口,分别是java.util.List和java.util.Set。其中,List的特点是元素有序、元素可重复。Set的特点是元素无序,而且不可重复。List接口的主要实现类有java.util.ArrayList和java.util.LinkedList,Set接口的主要实现类有java.util.HashSet和java.util.TreeSet。

从上面的描述可以看出JDK中提供了丰富的集合类库,为了便于初学者进行系统地学习,接下来通过一张图来描述整个集合类的继承体系。
其中,最上层灰色框里填写的都是接口类型,第二层里填写的都是具体的实现类。
集合本身是一个工具,它存放在java.util包中。在Collection接口定义着单列集合框架中最最共性的内容。

Collection 常用功能

Collection是所有单列集合的父接口,因此在Collection中定义了单列集合(List和Set)通用的一些方法,这些方法可用于操作所有的单列集合。方法如下:

  • public boolean add(E e): 把给定的对象添加到当前集合中 。
  • public void clear() :清空集合中所有的元素。
  • public boolean remove(E e): 把给定的对象在当前集合中删除。
  • public boolean contains(E e): 判断当前集合中是否包含给定的对象。
  • public boolean isEmpty(): 判断当前集合是否为空。
  • public int size(): 返回集合中元素的个数。
  • public Object[] toArray(): 把集合中的元素,存储到数组中。

方法演示:

import java.util.ArrayList;
import java.util.Collection;public class Demo1Collection {public static void main(String[] args) {// 创建集合对象 // 使用多态形式Collection<String> coll = new ArrayList<String>();// 使用方法// 添加功能  boolean  add(String s)coll.add("小李广");coll.add("扫地僧");coll.add("石破天");System.out.println(coll);// boolean contains(E e) 判断o是否在集合中存在System.out.println("判断  扫地僧 是否在集合中"+coll.contains("扫地僧"));//boolean remove(E e) 删除在集合中的o元素System.out.println("删除石破天:"+coll.remove("石破天"));System.out.println("操作之后集合中元素:"+coll);// size() 集合中有几个元素System.out.println("集合中有"+coll.size()+"个元素");// Object[] toArray()转换成一个Object数组Object[] objects = coll.toArray();// 遍历数组for (int i = 0; i < objects.length; i++) {System.out.println(objects[i]);}// void  clear() 清空集合coll.clear();System.out.println("集合中内容为:"+coll);// boolean  isEmpty()  判断是否为空System.out.println(coll.isEmpty());     }
}

Java中的Collection集合相关推荐

  1. Java中的Collection集合以及Collection集合实现类实例

    Collection集合 集合概述 集合的体系特点 Collection集合常用API Collection集合的遍历方式 方式一:迭代器 方式二:foreach/增强for循环 方式三:lambda ...

  2. Java中如何克隆集合——ArrayList和HashSet深拷贝

    2019独角兽企业重金招聘Python工程师标准>>> 编程人员经常误用各个集合类提供的拷贝构造函数作为克隆List,Set,ArrayList,HashSet或者其他集合实现的方法 ...

  3. java中如何上送list集合_如何使用java中的list集合

    如何使用java中的list集合 发布时间:2020-06-26 14:45:11 来源:亿速云 阅读:88 作者:Leah 如何使用java中的list集合?针对这个问题,这篇文章详细介绍了相对应的 ...

  4. Java中遍历Set集合的三种方法

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

  5. JAVA中的Map集合

    JAVA中的Map集合 1.Map简介 java.util.map接口 1.Map称为查找表,该数据结构的样子是一个"多行两列"的表格,左列为key,右列为value,Map总是根 ...

  6. Java中数组转集合总结

    一.使用Arrays.asList() 方法 package com.joshua317;import java.util.*;public class Main {public static voi ...

  7. Java中遍历Set集合的三种方法(实例代码)

    哈喽,欢迎来到小朱课堂,下面开始你的学习吧! Java中遍历Set集合的三种方法 废话不多说,直接上代码 1.迭代遍历: Set set = new HashSet(); Iterator it = ...

  8. java List最大_在java中获取List集合中最大的日期时间操作

    取list集合中最大的日期, 可以用date max = collections.max(datelist);, 传入一个日期集合, 就可以获取, 工作中有这个需求, 就查找到这个, 代码如下 } e ...

  9. java 集合初始化_6种方法初始化JAVA中的list集合

    List 是 Java 开发中经常会使用的集合,你们知道有哪些方式可以初始化一个 List 吗?这其中不缺乏一些坑,今天栈长我给大家一一普及一下. 1.常规方式 List languages = ne ...

最新文章

  1. Oracle嵌套表实例说明
  2. SSH反向连接及Autossh
  3. python json解析方法_Python 中的 JSON 方式讲解
  4. hdu 6106 Classes
  5. 面试题28 字符串排列
  6. Why does pthread_cond_signal not work?【转】
  7. java duration 时间差_java8 计算时间差的方法示例
  8. 多层RNN的定义与理解
  9. Java基础之时间的友好显示
  10. linux 已有目录挂载磁盘
  11. 手写bpnn算法实现iris多分类
  12. 计算机科学导论第五版第二章答案,(计算机科学导论第2章答案.docx
  13. python在条件表达式中不允许使用_在条件表达式中不允许使用赋值运算符 = ,会提示语法错误。...
  14. NexT主题配置优化-出土指南
  15. C#毕业设计——基于C#+asp.net+SQL server的物料管理系统(ERP)设计与实现(毕业论文+程序源码)——物料管理系统(ERP)
  16. Transform.up与Vector3.up
  17. 超体分享 | 迭代思维:你感觉原地踏步,只是因为你想一步到位
  18. iOS模拟器iOS Simulator详细图文使用教程
  19. 奔驰c260语言设置方法图解,奔驰glc260l​中控​按钮图解,glc260l车内按键功能说明...
  20. SuperMarketSys_SSM超市管理系统(Spring+SpringMVC+Mybatis)

热门文章

  1. 开工大吉| “卯”足干劲,大展宏“兔”!
  2. python做接口外部调用_python使用suds调用外部接口
  3. 卡西欧发布与红牛二队最新合作的高性能运动手表
  4. OpenDaylight安装使用
  5. 关于顽固进程scclient exe scguardc exe sccltui exe和系统服务scclient scg
  6. OpenCV调用海康威视等摄像头(处理rtsp视频流)方法以及,出现内存溢出(error while decoding)或者高延迟问题解决
  7. 使用predix-cli来简化cf-cli操作
  8. 多用户使用一台计算机时可设置,如何使Windows10系统多用户同时操作
  9. 服务器上tomcat启动不起来
  10. “双核浏览器”官网下载地址