1.背景

集合是java中非常重要的技术点,也是面试经常问到的技术点....

2.集合体系

单列集合

双列集合,key value集合

如果出去面试,这体系应该可以背出来,才算合格

3.常用方法

代码如下:

package com.ldp.collection.demo01;

import org.junit.Test;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; /**
* @author 姿势帝-博客园
* @address https://www.cnblogs.com/newAndHui/
* @WeChat 851298348
* @create 02/27 6:20
* @description <p>
* 要点
* 1.是否可以重复存放元素.
* 2.是否有序,list有序,set无序.
* </p>
*/
public class Test01Collection {
/**
* 常见方法测试
*/
@Test
public void test01ArrayList() {
List list = new ArrayList();
// 添加
list.add("张无忌");
list.add(18);
list.add(true);
System.out.println("list=" + list); // 删除
//list.remove(1);//删除第二个元素
list.remove("张无忌");//指定删除某个元素
System.out.println("list=" + list); // 判断是否存在
System.out.println(list.contains("张无忌")); // 集合长度
System.out.println(list.size()); // 判断是否为空
System.out.println(list.isEmpty()); // 清空集合
list.clear();
System.out.println("list=" + list); // 添加多个元素
ArrayList list2 = new ArrayList();
list2.add("张三丰");
list2.add("金毛狮王");
list.addAll(list2);
System.out.println("list=" + list); // 查找是否都存在
System.out.println(list.containsAll(list2)); // 删除多个元素
list.removeAll(list2);
System.out.println("list=" + list);
} /**
* 集合遍历与迭代器使用
* 1.Iterator叫做迭代器,用于遍历集合Collection中的元素,仅用于遍历集合,本身并不存放对象;
* 2.在一边查找一边删除时,必须使用迭代器的方式
* 3.使用迭代器的必备步骤: 1.获取一个迭代器iterator();2.判断是否有下一个hasNext();3.获取下一个元素next()
*/
@Test
public void test02Iterator() {
List list = new ArrayList(); // 获取一个迭代器
Iterator iterator = list.iterator();
// 判断是否有下一个
while (iterator.hasNext()) {
// 获取下一个元素
System.out.println(iterator.next());
}
}
}

4.List集合特点

* list的特点
* 1.元素有序(添加顺序和取出顺序一致),可以添加重复的元素,也可以加入null对象,实际生产中最常使用;
* 2.每个值都有索引,可以根据索引存取元素
* 3.实现类型ArrayList\LinkedList\Vector

5.ArrayList源码解读

见:https://www.cnblogs.com/newAndHui/p/16101626.html

完美!

java集合专题之Collection接口的更多相关文章

  1. Java集合框架之Collection接口

    Java是一门面向对象的语言,那么我们写程序的时候最经常操作的便是对象了,为此,Java提供了一些专门用来处理对象的类库,这些类库的集合我们称之为集合框架.Java集合工具包位于Java.util包下 ...

  2. Java集合----概述、Collection接口、Iterator接口

    Java 集合概述 Java 集合就像一种容器,可以把多个对象的引用放入容器中. Java 集合类可以用于存储数量不等的多个对象,还可用于保存具有映射关系的关联数组 Java 集合可分为 Set.Li ...

  3. Java学习--java中的集合框架、Collection接口、list接口

    与数组相比:1.数组的长度固定,而集合的长度可变2.数组只能通过下表访问元素,类型固定,而有的集合可以通过任意类型查找所映射的具体对象 java集合框架:collection(list序列,queue ...

  4. Java 集合系列 02 Collection架构

    java 集合系列目录: Java 集合系列 01 总体框架 Java 集合系列 02 Collection架构 Java 集合系列 03 ArrayList详细介绍(源码解析)和使用示例 Java ...

  5. Java集合框架之四大接口、常用实现类

    Java集合框架 <Java集合框架的四大接口> Collection:存储无序的.不唯一的数据:其下有List和Set两大接口. List:存储有序的.不唯一的数据: Set:存储无序的 ...

  6. Java集合框架之Map接口浅析

    Java集合框架之Map接口浅析 一.Map接口综述: 1.1java.util.Map<k, v>简介 位于java.util包下的Map接口,是Java集合框架的重要成员,它是和Col ...

  7. Java集合框架之Set接口浅析

    Java集合框架之Set接口浅析 一.java.util.Set接口综述: 这里只对Set接口做一简单综述,其具体实现类的分析,朋友们可关注我后续的博文 1.1Set接口简介 java.util.se ...

  8. Java集合框架之List接口浅析

    Java集合框架之List接口浅析 一.List综述: 毫无疑问List接口位于java.util包下,继承自 Collection接口 存储元素的特点: 有序可重复(有序:即存进去是什么顺序,取出来 ...

  9. 集合概述及Collection接口的常用方法

    java集合像是一种容器,可以动态的把多个对象的引用放到容器中 java的集合类可以用于存储数量不等的多个对象,还可以用于保存具有映射关系的关联数组 package com.aff.coll; imp ...

  10. java 集合框架(二)Iterable接口

    Iterable接口是java 集合框架的顶级接口,实现此接口使集合对象可以通过迭代器遍历自身元素,我们可以看下它的成员方法 修饰符和返回值 方法名 描述 Iterator<T> iter ...

随机推荐

  1. Java中的ThreadLocal和 InheritableThreadLocal

    Java中的ThreadLocal和 InheritableThreadLocal package com.example.core.mydemo.java; /** * output * Threa ...

  2. python类和对象初识

    # python类和对象初识 a = 2 b = 3 print(id(a)) print(type(a)) print(a) print(id(b)) print(type(b)) print(b) ...

  3. apollo配置json

    #json串原文[{"username":"李小刚","sex":"男"},{"username": ...

  4. apollo配置中心从数据库中查询所有的配置及项目

    apollo配置中心从数据库中查询所有的配置及项目 需求背景:如果需要从Apollo查询某个配置项做批量的更新替换,如果一个一个找不合适且容易遗漏,需要从底层数据库表中模糊查询来实现. 1.查看apo ...

  5. FolkMQ 1.6.0(纯血国产,适合信创)

    FolkMQ 是个"新式"的消息中间件.强调:"简而强".可内嵌,可单机,可集群(部署包为 9Mb). 功能简表 角色 功能 生产者(客户端) 发布普通消息.Q ...

  6. 简单的解释下什么是CNAME

    今天在用阿里云的安全防护给接口域名做web应用防火墙,需要配置cname,原来有用到过但是一直没去了解过,只知道怎么用今天搜了一下看看下面是原文,白话文好理解分享一下. 什么是CNAME?先简单的说下 ...

  7. 剖析 Kafka 消息丢失的原因

    目录 前言 一.生产者导致消息丢失的场景 场景1:消息体太大 解决方案 : 1.减少生产者发送消息体体积 2.调整参数max.request.size 场景2:异步发送机制 解决方案 : 1.使用带回 ...

  8. CAEmitterLayer动画的开始和结束

    有个需求,要求模仿微信做表情下雨的动画,一开始想用CAEmitterLayer,实现的代码如下: //期望:显示特效五秒后结束特效 UIImage *image = [UIImage imageNam ...

  9. java并发和排序的简单例子(Runnable+TreeSet)

    很多时候并发需要考虑线程安全,但也有很多时候和线程安全毛关系都没有,因为并发最大的作用是并行,线程安全仅仅是并发的一个子话题. 例如常常会用于并发运算,并发i/o. 下文是一个练习笔记. 运行环境:w ...

  10. 麒麟操作系统V10安装mysql8.0.26

    今年mysql装得有点多,大概有4次了,快变系统工程师了! 本文重点说下如何识别版本和配置服务! 首先两点: 1)麒麟本质是linux内核,所以基本上centos的操作在这里可以通用 2)虽然通用,但 ...