集合


java的集合框架

* 1.java.util.Collection接口

  • Collection是所有集合的顶级接口,里面规定了集合操作元素的相关功能方法。

  • 集合与数组一样,用于存储一组元素,但是集合有多个不同的实现类来实现不同

  • 的数据结构。

  • Collection下面有两个常冤的子接口:

  • java.util.List:线性表,特点∶可以保存重复元素并且有序,可通过下标操作。

  • java.util.set:不可重复的集合(增删改变后会变的无序)

  • 这里的重复元素判定是依靠元素自身equals方法比较的结果而定。

  • List常见的实现类:

  • java.util.ArrayList ,java.util.LinkedList

  • set常见的实现类:

  • java.util.HashSet

boolean add( E e)

     向当前集合中添加一个元素,成功添加后返回true否则返回false
     */
    c.add("1");

    System.out.println(c);

int size()

    返回当前集合的元素个数
     */
    int size=c.size();
    System.out.println("size:"+size);
    /*

boolean isEmpty()

    判断当前集合是否为空集,当前集合size为0时,isEmpty返回值为true
    
    boolean isEmpty=c.isEmpty();
    System.out.println("是否为空集"+isEmpty);

c.clear();

清空集合

boolean contains(Object o)

    集合的contains判断包含时的依据为:给定元素是否与集合中现有的元素

存在equals比较为true的情况,存在则认为包含。|

remove方法

删除元素时也是删除与集合中equals比较为true的元素
对于List集合而言,重复元素仅删除一次

//Collection c=new ArrayList();
        Collection c=new HashSet();
        c.add(new Point(1,2));
        c.add(new Point(3,2));
        c.add(new Point(4,2));
        c.add(new Point(1,2));
        /*
         集合重写了toString方法,格式为:
         [元素1.toString(),元素2.toString(),.....]
         */

        System.out.println(c);

        Point p=new Point(1,2);
        /*
       集合的contains判断包含时的依据为:给定元素是否与集合中现有的元素
        存在equals比较为true的情况,存在则认为包含。|
         */
        boolean contains=c.contains(p);
        System.out.println("包含:"+contains);
        /*
   ###    remove方法
   删除元素时也是删除与集合中equals比较为true的元素
        对于List集合而言,重复元素仅删除一次
         */
        c.remove(p);
        System.out.println(c);

集合只能存放引用类型元素,并且存放的是元素的引用(地址)

package collection;

import java.util.ArrayList;
import java.util.Collection;

/**
 * 集合只能存放引用类型元素,并且存放的是元素的引用(地址)
 */
public class CollectionDemo3 {
    public static void main(String[] args) {
        Collection c=new ArrayList();
        Point p=new Point(1,2);

        c.add(p);
        System.out.println("p"+p);//(1,2)
        System.out.println("c"+c);//[(1,2)]

        p.setX(2);
        System.out.println("p"+p);//(2,2)
        System.out.println("c"+c);//[(2,2)]

    }
}

boolean addAll(Collection c)

    将给定的集合的所有元素添加到当前集合中

boolean containsAll(Collection c)

    判断当前集合是否包含给定集合中的所有元素

removeAll

  删除给定集合中与给定元素集合中的所有元素
package collection;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;

public class CollectionDemo4 {
    public static void main(String[] args) {
        //Collection c1=new ArrayList();
        Collection c1=new HashSet();
        c1.add("java");
        c1.add("c++");
        c1.add("net");
        System.out.println("c1:"+c1);
        Collection c2=new ArrayList();
        c2.add("android");
        c2.add("ios");
        c2.add("java");
        System.out.println("c2:"+c2);
        /*
        boolean addAll(Collection c)
        将给定的集合的所有元素添加到当前集合中
         */
        c1.addAll(c2);
        System.out.println("c1:"+c1);
        System.out.println("c2:"+c2);
        Collection c3=new ArrayList();
        c3.addAll(c1);
        c3.add("aaa");
        /*
        boolean containsAll(Collection c)
        判断当前集合是否包含给定集合中的所有元素
         */

        boolean contains=c1.containsAll(c3);
        boolean contains2=c3.containsAll(c1);
        System.out.println("c3:"+c3);
        System.out.println("全包含"+contains);
        System.out.println("全包含"+contains2);
        /*
        removeAll 删除给定集合中与给定元素集合中的所有元素
         */
        c1.removeAll(c3);
        System.out.println("c1:"+c1);
        System.out.println("c3:"+c3);

    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值