zoukankan      html  css  js  c++  java
  • Collection集合

    当数据多需要存储,需要容器且数据的个数不确定,无法使用数组,这时可以使用Java中的另一个容器——集合。

    集合与数组的区别:

    数组的长度是固定的,集合的长度是可变的。 

    数组存储同一类型的元素,可以存储基本数据类型值,  集合存储的都是对象,且对象的类型可以不一致。

    什么时候使用集合,怎样区分集合容器

    当对象多的时候需要先进行存储。每个容器的数据结构(数据存储的一种方式)不一样。

    学习体系:看顶层,用底层

    Collection接口

    import java.util.ArrayList;
    import java.util.Collection;
    
    
    public class CollectionDemo {
        public static void main(String[] args) {
            Collection coll= new ArrayList();
            //collectionDemo1(coll);
            Collection c1 = new ArrayList();
            Collection c2 = new ArrayList();
            collectionDemo2( c1, c2);
        }
        
        /**
         * 
          * collectionDemo
          * @Title: collectionDemo
          * @Description: collection接口中的普通方法
          * @param @param coll    
          * @return void
          * @throws
         */
        private static void collectionDemo1(Collection coll) {
            //往集合中添加元素
            coll.add("Tom1");
            coll.add("Tom2");
            coll.add("Tom3");
            
            //打印集合
            System.out.println(coll);//打印结果 [Tom1, Tom2, Tom3]
            
            //删除集合
            //coll.remove("Tom1");
            //System.out.println(coll);//打印结果[Tom2, Tom3]
            
            //判断是否包含
            System.out.println(coll.contains("Tom2"));//打印结果true
            
            //是否为空
            System.out.println(coll.isEmpty());//打印结果false
            
            //清除
            coll.clear();
            System.out.println(coll);//打印结果为空
            
        }
        /**
         * 
          * collectionDemo2
          * @Title: collectionDemo2
          * @Description: collection方法中带All的方法
          * @param @param c1
          * @param @param c2    
          * @return void
          * @throws
         */
        private static void collectionDemo2(Collection c1,Collection c2) {
            //给两个集合添加元素
            c1.add("Tom1");
            c1.add("Tom2");
            c1.add("Tom3");
            
            c2.add("Tom2");
            c2.add("Tom5");
            c2.add("Tom6");
            
            //添加所有c2的元素到c1中
            c1.addAll(c2);
            //c1中是否包含c2中的所有元素
            boolean b = c1.containsAll(c2);
            System.out.println(b);//打印结果为true
            
    //        //删除c1中所有和c2相同的元素
    //        c1.removeAll(c2);
    //        System.out.println(c1);
            
            //保留c1和c2中相同的元素
            c1.retainAll(c2);
            System.out.println(c1); 
            
        }
    
    }

     

  • 相关阅读:
    【RocketMQ之介绍】
    1. JVM体系结构概述
    技术贴
    http协议
    如何在2个小时之内掌握48个国际音标?
    托业全真高频词汇(一)
    三. 托业单词之业务拓展 Business Development
    二、托业单词之人事及管理 Personnel & Management
    一、托业单词之办公室事宜 Office matters
    VUE 之让数字四舍五入
  • 原文地址:https://www.cnblogs.com/qimengru/p/7616936.html
Copyright © 2011-2022 走看看