Java第13次作业集

一、题目

题目1:创建两个线性表,分别存储{“chen”,“wang”,“liu”,“zhang”}和{“chen”,“hu”,“zhang”},求这两个线性表的交集和并集。

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

二、代码

package IntersectionUnion;
import java.util.ArrayList;
public class Demo {
    public static void main(String[] args) {
        ArrayList<String> a = new ArrayList<String>();
        a.add("chen");
        a.add("wang");
        a.add("liu");
        a.add("zhang");
        ArrayList<String> b = new ArrayList<String>();
        b.add("chen");
        b.add("hu");
        b.add("zhang");
        ArrayList<String> c = new ArrayList<String>(a);
        ArrayList<String> d = new ArrayList<String>(b);
        a.retainAll(b);                
        System.out.println("两个线性表的交集为:"+a);
        c.removeAll(d);            
        c.addAll(d);                
        System.out.println("两个线性表的并集为:"+c);
    }
}
package CharactersNumber;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Scanner;

public class Demo {

    public static void main(String[] args) {
        Scanner a = new Scanner(System.in);
        System.out.println("请输入至少由数字、大写字母和小写字母三种字符中的一种格式构成的字符串");
        String s = a.nextLine();
        char[] c = s.toCharArray();
        HashMap<String, Integer> h = new HashMap<String, Integer>();
        int sum1 = 0;
        int sum2 = 0;
        int sum3 = 0;
        ArrayList s1 = new ArrayList();
        ArrayList s2 = new ArrayList();
        ArrayList s3 = new ArrayList();     
        h.put("大写字母", sum1);
        h.put("小写字母", sum2);
        h.put("数字", sum3);
            for(int i=0;i<c.length;i++) {
                if(Character.isDigit(c[i])) {                //判断数字字符
                    sum1++;
                    s1.add(c[i]);
                }else if(Character.isLowerCase(c[i])) {    //判读小写字母
                    sum2++;
                    s2.add(c[i]);
                }else if(Character.isUpperCase(c[i])) {    //判断大写字母
                    sum3++;
                    s3.add(c[i]);
                }
                }
            System.out.println("数字:"+sum1+"个,分别为:"+s1);
            System.out.println("小写字母:"+sum2+"个,分别为:"+s2);
            System.out.println("大写字母:"+sum3+"个,分别为:"+s3);
    }

}

 

三、运行结果

 

 

 

 

posted on 2019-12-01 22:43  心灵老鸭汤  阅读(184)  评论(0编辑  收藏  举报