* 1,boolean add<E,e>  添加* 确保此 collection 包含指定的元素(可选操作)。* 参数:e - 确定此 collection 中是否存在的元素。E - 代表Object类,说明该add可以添加任何对象,任意对象都是Object的子类对象,要么是直接子类要么是间接子类* 返回:如果此 collection 由于调用而发生更改,则返回 true ;返回一个bool类型,所以要用bool类型去接收 * add方法,如果是List集合一直都返回true,因为List集合中是可以存储重复元素的;如果是Set集合,当存储重复元素的时候,就会返回false* * 2,boolean remove(Object o)  删除指定元素* 从此 collection 中移除指定元素* 参数:o - 要从此 collection 中移除的元素(如果存在)。 * 返回:如果此调用将移除一个元素,则返回 true * * 3,void clear()   清空集合* 移除此 collection 中的所有元素(可选操作)。* * 4,boolean contain(Object o)  判断集合是否包含某个元素* 如果此 collection 包含指定的元素,则返回 true。* 参数:o - 测试在此 collection 中是否存在的元素。 * 返回:如果此 collection 包含指定的元素,则返回 true * * 5,boolean isEmpty()  判断集合是否是空* 如果此 collection 不包含元素,则返回 true。 * * 6,int size()     获取集合在元素的个数* 返回此 collection 中的元素数。
package com.wsq.collection;import java.util.ArrayList;
import java.util.Collection;import com.wsq.bean.Student;
public class Demo2_Collection {public static void main(String[] args) {demo1();demo2();}private static void demo2() {Collection c = new ArrayList();         //父类引用指向子类对象;Collection是接口,不能去new对象,不能被实例化  //因为Collection是一个接口,不能被实例化也不能new对象,但是它的子类ArrayList是个具体的类,可以new对象c.add("a");                             //由demo1可以知道,add的返回值都是true,就没有必要定义返回值了,直接添加就行 c.add("b");c.add("c");c.add("d");//c.remove("b");                        //删除指定元素,输出结果为:[a, c, d] //c.clear();                            //清空集合,输出结果结果为:[]//System.out.println(c);            //System.out.println(c.contains("b"));  //判断集合是否包含某个元素,输出结果为:true,说明集合中包含 b 这个元素//System.out.println(c.isEmpty());      //判断集合是否是空;若为空,返回true;若不为空,返回false//System.out.println(c.size());         //获取集合在元素的个数,输出结果为4,即集合中有a,b,c,d四个元素}public static void demo1(){Collection c = new ArrayList();                         //父类引用指向子类对象boolean b1 = c.add("abc");     boolean b2 = c.add(true);                               //自动装箱new Boolean(true);相当于把true封装成对象给添加进来boolean b3 = c.add(100);boolean b4 = c.add(new Student("张三",23));               //new Student("张三",23);这个是自定义对象,也就相当于父类引用指向子类对象boolean b5 = c.add("abc");//在调用add方法的时候,编译的时候,执行的是左边Collection里面的方法,而运行的时候,执行的是ArrayList里面的方法//即编译看的是父类,运行看的是子类System.out.println(b1);                                 //输出结果为:trueSystem.out.println(b2);                                 //输出结果为:trueSystem.out.println(b3);                                 //输出结果为:trueSystem.out.println(b4);                                 //输出结果为:trueSystem.out.println(b5);                                 //输出结果为:true,b1是一样的,返回也是true/*** add这个方法是Collection具备的,Collection有两个之间的子接口,一个是Set,一个是List* List里面是可以存储重复的,而Set里面不可以存储重复的,当在Set集合里面存储重复的元素的时候,就会返回false* List集合这边可以存储重复,一直返回true就行* Set集合这边不可以存储重复,只有有重复的元素就返回false      * 所以我们在平常写添加的时候,这个返回值类型一般不写,因为都true,没有意义* * */System.out.println(c);                                  //上下两行代码输出结果一样,说明已经被重写了toString方法,ArrayList这个类重写了toString方法System.out.println(c.toString());                       }}

Java——集合的基本功能测试相关推荐

  1. java 集合 接口_Java集合之Collection接口

    1 - Java集合介绍 /* 1. 一方面, 面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象 的操作,就要对对象进行存储. 2. 另一方面,使用Array存储对象方面具有一些弊 端,而 ...

  2. java 头尾 队列_超详细的java集合讲解

    1 集合 1.1 为什么会出现集合框架 [1] 之前的数组作为容器时,不能自动拓容 [2] 数值在进行添加和删除操作时,需要开发者自己实现添加和删除. 1.2 Collection接口 1.2.1 C ...

  3. java集合总结_Java中集合总结

    Java数组的长度是固定的,为了使程序能够方便地存储和操作数目不固定的一组数据,JDK类库提供了Java集合,这些集合类都位于java.util包中,但是与数组不同的是,集合中不能存放基本类型数据,而 ...

  4. 考考基础部分,谈谈Java集合中HashSet的原理及常用方法

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:工匠初心 cnblogs.com/LiaHon/p/1125 ...

  5. Java集合框架综述,这篇让你吃透!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:平凡希 cnblogs.com/xiaoxi/p/60899 ...

  6. 【Java集合框架】ArrayList类方法简明解析(举例说明)

    本文目录 1.API与Java集合框架 2.ArrayList类方法解析 2.1 add() 2.2 addAll() 2.3 clear() 2.4 clone() 2.5 contains() 2 ...

  7. Java基础篇:Java集合

    文章目录 1.概述 2.Collection接口 2.1 Collection接口方法 2.2 Iterator迭代器接口 2.3 Collection子接口之:List接口 2.4 Collecti ...

  8. java奇怪的问题_一个奇怪的Java集合问题

    int size = list.size(); Integer existIndex = -1; for (int index = 0; index < size; index++) { Pho ...

  9. Java集合框架的知识总结(1)

    Java集合框架的知识总结(1) 所有集合类都位于java.util包下.集合中只能保存对象(保存对象的引用变量). Java的集合类主要由两个接口派生而出:Collection和Map,Collec ...

最新文章

  1. asp.net客户端脚本验证小技巧
  2. 北大杨超:以偏微分方程求解为例,AI如何助力科学计算?
  3. HBase Error IllegalStateException when starting Master: hsync
  4. ext的ajax写法,ExtJs的Ajax示例
  5. java内存模型和内存结构_Java内存模型和优化
  6. java Calendar 小时值得到24进制格式
  7. iPhone 11全球热销:价格真香是硬道理
  8. 福特在迈阿密开始探索自动驾驶商业模式:先送比萨试试
  9. c语言 malloc前的括号,20. 有效的括号(LeetCode)——C语言及JS实现
  10. iOS应用开发应遵循的10条设计原则
  11. JavaScript设计模式 - 适配器模式
  12. 生产企业全流程生产管控_如何通过创建流程使生产率提高10倍
  13. 【饭谈】那些看似为公司着想,实际却很自私的故事 (一:造轮子)
  14. 基于leftlet的旅游地图相册
  15. OpenWrt 系列教程汇总
  16. 网站关键词优化技术:如何限制关键词挖掘的范围
  17. PCS (物理编码子层)
  18. 想告别繁琐的工作?你可能需要这个。
  19. 关于浏览器中使用百度定位
  20. Dockerfile创建mysql镜像

热门文章

  1. mysql磁盘临时表清理_mysql 创建大量磁盘临时表
  2. 网络工程属于计算机哪一类,网络工程专业属于什么门类
  3. npp夜光数据介绍 viirs_科研成果快报第177期:中国地区长时序AVHRR气溶胶数据的主要问题: 气溶胶反演频次与重污染天气...
  4. jpannel设置位置xy_实用的摄影技巧!10种常见摄影场景的单反相机设置技巧!
  5. 国内手机号正则表达式
  6. scss-@for 指令
  7. 一篇文章为你深度解析HTTPS 协议
  8. TypeScript 联合类型(union type)
  9. luoguP4551最长异或路径
  10. python集合以及编码初识