集合→Collection接口(成员方法)

一、集合Collection
1、为什么出现集合类?
面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,Java就提供了集合类。
2、数组和集合类同是容器,有何不同?
数组虽然也可以存储对象,但长度是固定的;集合长度是可变的。数组中可以存储基本数据类型,集合只能存储对象。
3、集合类的特点
集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。
4、Collection接口概述
Collection 层次结构中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素。一些 collection 允许有重复的元素,而另一些则不允许。一些 collection 是有序的,而另一些则是无序的。
5.Cllection接口中的成员方法:

     * boolean add(E e):添加一个集合元素
     * boolean remove(Object o):删除一个集合元素
     * void clear():清除集合中所有的元素
     * boolean contains(Object o):判断集合中是否包括此元素
     * boolean isEmpty():   如果此 collection 不包含元素(此集合为null),则返回 true。
     * int size():集合的长度
     * boolean addAll(Collection c):添加所有元素
     * boolean removeAll(Collection c):删除集合中所有元素
     * boolean containsAll(Collection c):判断集合A中是否包含集合B中的元素
     * boolean retainAll(Collection c):移除此 collection 中未包含在指定 collection 中的所有元素。

代码解读:

public class CollectionDemo {
    public static void main(String[] args) {
        // Cannot instantiate the type Collection:无法实例化类型集合
        // Collection c = new Collection();由于Collection是接口,所以无法被实例化
        // 创建一个集合A
        Collection c = new ArrayList();// 多态,父类引用指向子类对象
        // 添加一个元素
        c.add("hello");
        c.add("world");
        c.add("java");
        // 删除一个集合元素
        // c.remove("hello");
        // 清除集合中所有的元素
        // c.clear();
        // 判断集合中是否包括此元素
        /*
         * boolean ct = c.contains("java1"); if (ct == true) {
         * System.out.println("有此元素"); } else { System.out.println("没有此元素"); }
         */
        // 判断该集合是否为空集合,如果为空集合(null)返回true,不为空返回false
        /*
         * boolean cd = c.isEmpty(); System.out.println(cd);
         */
        // 创建一个集合B
        Collection c2 = new ArrayList();
        c2.add("hello");
        c2.add("cuntry");
        c2.add("javaEE");
        // System.out.println(c2);
        // boolean addAll(Collection c):添加所有元素
        // c2.addAll(c);
        // System.out.println(c2);
        // System.out.println(c);
        // boolean containsAll(Collection c):判断集合A中是否包含集合B中的元素
        // boolean bc2 = c2.containsAll(c);//这个判断是判断集合B中是否包含集合A中的所有元素,包含为true
        // System.out.println(bc2);//true
        // boolean retainAll(Collection c)
        // 移除此 collection 中未包含在指定 collection 中的所有元素。
        boolean b = c2.retainAll(c);// 输出集合A与集合B的交集
        /*
         * 注意事项: 集合B.retainAll(集合B) 
         * 如果集合A有元素,集合B也有元素,交集有:null,相同添加的元素
         * 如果集合A有元素,集合B没有元素,那么false 
         * 如果集合A没有元素,集合B有元素,那么为true
         */
        System.out.println(b);
        System.out.println(c2);
        System.out.println(c);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目 录 第一章 JAVA入门 10 计算机语言发展史 10 机器语言 10 汇编语言 10 高级语言 10 其他高级语言 11 JAVA发展简史 12 JAVA为什么能够流行? 13 JAVA各版本的含义 13 JAVA技术体系架构 14 JAVA的特性和优势 14 JAVA应用程序的运行机制 15 JVM(JAVA VIRTUAL MACHINE) 16 Java运行时环境JRE(Java Runtime Environment) 17 JAVA语言应用范围 18 第一个JAVA程序 18 JAVA开发环境搭建 18 一个典型的JAVA程序的编写和运行过程 19 第一个程序常见错误 20 第一个JAVA程序的总结和提升 20 常用Java开发工具 20 常用dos命令 21 本章笔试作业 21 本章上机操作 21 第二章(1) 编程的基本概念 22 注释 22 标识符 22 关键字/保留字 23 变量(variable) 24 常量(Constant) 25 命名规则(规范) 25 基本数据类型(primitive data type) 26 整型变量 26 浮点型 27 字符型(2个字节): 28 boolean类型 29 运算符(operator) 29 二元运算符 29 一元运算符 30 布尔逻辑表达符 30 位运算符 30 扩展运算符 31 字符串连接符 31 三目条件运算符 31 运算符优先级的问题 31 自动类型转换 32 基本类型转化时常见错误和问题 33 方法 33 简单的键盘输入和输出 33 本章思考作业 34 上机操作 34 第二章(2) 控制语句 35 顺序结构 35 选择结构 35 if单选择结构 35 if-else双选择结构 35 If-elseif-else多选择结构 36 switch多选择结构 37 循环结构 39 While和dowhile的区别 41 For循环 42 break语句和continue语句 47 语句块 48 递归结构 49 本章作业 50 本章上机操作 51 第三章 JAVA面向对象程序开发 52 编程语言发展史 52 类和对象是如何产生发展的?如何进化的? 52 面向对象思想初步(OOP初步Object Oriented Programming) 53 面向对象编程的语言的三大特征简介 56 对象和类的概念 56 类和对象初步 57 测试类的定义方式 57 简单的学生类编写示例 58 内存分析 59 属性(field,或者叫成员变量) 59 引用类型 60 类的方法 60 对象的创建和使用 60 构造器(或者叫做构造方法,constructor) 60 垃圾回收机制(Garbage Collection) 63 方法的重载(overload),构造方法的重载 63 this关键字 65 static 关键字 66 静态初始化块(经常用来初始化类,加载类信息时执行!) 67 package 68 JDK中的主要包 68 import 68 eclipse的使用 69 继承(extend, inheritance) 70 为什么需要继承?继承的作用? 70 继承介绍 70 如何实现继承? 70 继承使用要点 71 Object类 72 toString方法 72 equals方法 73 super关键字 74 方法的重写(override) 74 隐藏/封装(encapsulation) 75 为什么需要封装?封装的作用和含义? 75 使用访问控制符,实现封装 76 封装的使用细节 76 多态(polymorphism) 76 为什么需要多态? 76 如何实现多态? 77 方法绑定(method binding) 77 静态绑定 77 动态绑定 77 多态的使用要点 78 对象的转型(casting) 79 final 81 抽象类 82 抽象类的使用要点 83 接口 83 为什么需要接口? 84 如何定义接口? 84 接口的本质探讨 84 接口使用要点 85 接口的多继承 86 面向接口编程 87 OOP更多应用 87 组合 87 内部类(innerclasses) 88 字符串(java.lang.String类)的使用 90 字符串相等的判断 92 思考作业 93 上机作业 94 第四章 异常机制 95 导引问题 95 异常(Exception)的概念 96 异常分类 96 Error 97 Error和Exception的区别 97 Exception 97 异常的处理办法之一,捕获异常 99 try块 99 catch 99 finally 100 try, catch,finally ,return 执行顺序 100 异常的处理办法之二,声明异常:

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值