/*
* 集合的顶层接口--Collection接口
* 添加
* add()
* addAll()
*
* 遍历集合
* iterator() 迭代器
*
* 删除
* remove()
* removeAll()
*
* 大小Size()
*
* 判断集合是否为空
* isEmpty()
*/
集合的顶层接口--Collection接口
List
ArrayList
LinkedList
Set
HashSet
TreeSet

1.创建一个Collection集合对象,不能实例化,要引用

Collection collection=new ArrayList();

2.添加单个元素
集合中只能添加引用数据类型,不能是基本数据类型

collection.add(new Integer(1000));
collection.add("AAA");

3.使用Arrays工具类构建一个Collection集合

Collection newCollection= Arrays.asList("BBBB","CCCC",45.5F,4.0);

4.添加一个集合对象到集合中

collection.addAll(newCollection);
System.out.println(collection);

5.遍历集合中的元素  两种方式

for(Object object:collection) {
System.out.println(object);
}
System.out.println("--------------------------");

//迭代器[游标]遍历集合

Iterator iterator=collection.iterator();
iterator.next();//迭代第一个元素
iterator.remove();//移除第一个元素,移除当前迭代元素
while(iterator.hasNext()) {
Object object=iterator.next();
System.out.println(object);
}

6.移除元素

collection.remove("BBBB");//移除集合中指定的元素
System.out.println(collection);

7.移除集合中指定的子集合

collection.removeAll(Arrays.asList("CCCC",45.5f));
System.out.println(collection);

8.获取集合中的元素个数

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

9.判断一个集合是否为空

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

10.isEmpty()-->坑

Collection collection2=null;
//要判断collection2是否为空,不判断出现空指针的情况
if(collection2!=null) {
System.out.println(collection2.isEmpty());
}

 

集合--Collection接口详解&&迭代器的更多相关文章

  1. Collection接口详解

    Collection 介绍 https://blog.csdn.net/jyg0723/article/details/80498840 Stream API介绍  https://www.jians ...

  2. 详解 迭代器 —— Iterator接口、 ListIterator接口 与 并发修改异常

    (请关注 本人"Collection集合"博文--<详解 Collection集合>) Iterator接口(迭代器): 概述: 对 collection 进行迭代的迭 ...

  3. map接口详解

    1.Map接口详解(1)映射(map)是一个存储键.键值对的对象,给定一个键,可以查询得到它的值,键和值都可以是对象(2)键必须是唯一的,值可以重复(Map接口映射唯一的键到值)(3)有些映射可以接收 ...

  4. JDBC常用接口详解

    JDBC中常用接口详解 ***DriverManager 第一.注册驱动 第一种方式:DriverManager.registerDriver(new com.mysql.jdbc.Driver()) ...

  5. ReadWriteLock 接口详解

    ReadWriteLock 接口详解 这是本人阅读ReadWriteLock接口源码的注释后,写出的一篇知识分享博客 读写锁的成分是什么? 读锁 Lock readLock(); 只要没有写锁,读锁可 ...

  6. Java6.0中Comparable接口与Comparator接口详解

    Java6.0中Comparable接口与Comparator接口详解 说到现在,读者应该对Comparable接口有了大概的了解,但是为什么又要有一个Comparator接口呢?难道Java的开发者 ...

  7. socket接口详解

    1. socket概述 socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信. socket起源于UNIX,在Unix一切 ...

  8. “全栈2019”Java第八十四章:接口中嵌套接口详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  9. “全栈2019”Java第八十三章:内部类与接口详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

随机推荐

  1. PAT甲级——A1012 The Best Rank

    To evaluate the performance of our first year CS majored students, we consider their grades of three ...

  2. 使用em为单位制作两列弹性布局

    一.DIV布局按照定位的方法分为:浮动方法(float),坐标定位方法(position),还有就是两者相结合的方法. 二.DIV布局按照定义单位的不同可分为:固定宽度布局.流体布局.弹性布局和混合布 ...

  3. Python之路,Day1 - Python基础1(转载Alex)

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  4. Redis源码解析:23sentinel(四)故障转移流程

    十:故障转移流程中的状态转换 当哨兵针对某个主节点进行故障转移时,该主节点的故障转移状态master->failover_state,要依次经历下面六个状态: SENTINEL_FAILOVER ...

  5. 面试Nginx的几个常见问题(

    1.Nginx 服务器上的 Master 和 Worker 进程分别是什么 Master 进程:读取及评估配置和维持 Worker 进程:处理请求   2.怎么添加模块? Firstly, you h ...

  6. jQ-点击查看更多

    <style type="text/css"> .hi { width: 200px; height: 18vw; background-color: pink; fo ...

  7. ckfinder图片上传成功,但无法打开This image failed to load.

    原因是basedir和baseurl的问题 本地调试的时候 可以用 这种方式实现,但是部署到线上,就有问题

  8. PHP快速导出Excel文件 (采用xlsx Writer)

    <?php include_once("xlsxwriter.class.php"); ini_set('display_errors', 0); ini_set('log_ ...

  9. 【洛谷P1827】【USACO】 美国血统 American Heritage 由二叉树两个序列求第三个序列

    P1827 美国血统 American Heritage 题目描述 农夫约翰非常认真地对待他的奶牛们的血统.然而他不是一个真正优秀的记帐员.他把他的奶牛 们的家谱作成二叉树,并且把二叉树以更线性的&q ...

  10. css3烟花效果

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...