第十三周作业集

一、题目

(1)创建两个线性表,分别存储{"chen","wang","liu","zhang"}和{"chen","hu","zhang"}求这两个线性表的交集和并集

 

二、代码

public static void main(String[] args) {
        // TODO Auto-generated method stub
        List<String> list1 = new ArrayList<String>(Arrays.asList("chen","wang","liu","zhang"));
        List<String> list2 = new ArrayList<String>(Arrays.asList("chen","hu","zhang"));
        List<String> l1 = new ArrayList<String>(list1);
        List<String> l2 = new ArrayList<String>(list2);
        l2.removeAll(l1);
        l2.addAll(l1);
        System.out.println("两者并集为"+l2);
        List<String> l3 = new ArrayList<String>(list1);
        List<String> l4 = new ArrayList<String>(list2);
        System.out.println("两者的交集为"+jiaoji(l3,l4));
        
        

    }
    public static List jiaoji(List l3,List l4){
        List<String> m1 = new ArrayList<String>();
        for(Iterator<String> it=l3.iterator();it.hasNext();){
            String s = it.next();
            if(l4.contains(s)){
                m1.add(s);
            }
        }
        return m1;
        
    }

三、代码截图

 

 

题目二:

编写一个应用程序,输入一个字符串,该串至少由数字、大写字母和小写字母三种字符中的一种构成,
*如“123”、“a23”、“56aD”、“DLd”、“wq”、“SSS”、“4NA20”,对输入内容进行分析,统计每一种字符的个数,
* 并将该个数和每种字符分别输出显示。如:输入内容为“34Ah5yWj”,
* 则输出结果为:数字——共3个,分别为3,4,5;小写字母——共3个,分别为h,y,j;大写字母——共2个,
* 分别为A,W。

 

代码段:

public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        String str = scanner.nextLine();
        for (int i = 0; i < str.length(); i++) {
            list.add(str.charAt(i) + "");
        }

        // 统计字符
        int a = 0, b = 0, c = 0;
        ArrayList<String> l1 = new ArrayList<String>();
        ArrayList<String> l2 = new ArrayList<String>();
        ArrayList<String> l3 = new ArrayList<String>();
        for (int i = 0; i < list.size(); i++) {
            String ch = list.get(i);
            if (ch.charAt(0) > '0' && ch.charAt(0) < '9') {
                a++;
                l1.add(ch);
            } else if (ch.charAt(0) >= 'a' && ch.charAt(0) <= 'z') {
                b++;
                l2.add(ch);
            } else if (ch.charAt(0) >= 'A' && ch.charAt(0) <= 'Z') {
                c++;
                l3.add(ch);
            }
        }
        System.out.println("数字:" + a + "个,分别是:" + l1);
        System.out.println("小写字母:" + b + "个,分别是:" + l2);
        System.out.println("大写字母:" + c + "个,分别是:" + l3);
    }

}

运行结果:

posted on 2019-11-28 19:22  Zy钰  阅读(163)  评论(0编辑  收藏  举报

导航