集合的运算

集合的运算

给定两个集合,求集合的交集,并集,只有其中一个集合有的元素的集。
利用set类型比较方便

import java.util.*;
public class jihe {
    public static void main(String[] args){
        String[] a ={"a","b","c","d","e","f","g","in","off","about","get"}; //定义两个集合
        String[] b ={"f","g","a","come","get","go"};
        Set<String> x = new HashSet<>();           //set类型没有重复的元素,和arraylist有所不同
        Set<String> y = new HashSet<>();
        Set<String> z = new HashSet<>();

        //交集
        for(int i=0;i<=a.length-1;i++)
            for(int j=0;j<=b.length-1;j++)
                if(a[i]==b[j]){
                     x.add(a[i]);
                }

        //并集
        for(int i=0;i<=a.length-1;i++){
            y.add(a[i]);
        }
        for(int i=0;i<=b.length-1;i++){
            y.add(b[i]);                           //set类型没有重复,求并集直接把两个集合写入
        }

        //只有a有的集
        for(int i=0;i<=a.length-1;i++){
            z.add(a[i]);                          //先把a全部写入
        }
        for(int i=0;i<=a.length-1;i++)
            for(int j=0;j<=b.length-1;j++)
                if(a[i]==b[j]){
                    z.remove(a[i]);               //去掉b中含有的元素
                }

        //输出
        System.out.println("交集");
        for(String x1:x){
            System.out.print(x1+" ");
        }
        System.out.println("\n并集");
        for(String y1:y){
            System.out.print(y1+" ");
        }
        System.out.println("\n只有a有的集");
        for(String z1:z){
            System.out.print(z1+" ");
        }
    }
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Ramer42/article/details/83022633
今日推荐