day15 Java String类 习题


肯定的微笑
准备,往前出发




1. 统计一个字符串中大写字母,小写字母,数字出现的次数

/*
    需求:统计一个字符串中大写字母,小写字母,数字出现的次数
    "HadoopJava12138"
           如何判断是大写还是小写呢?
           ASCLL码值:
           '0' 48
           'A' 65
           'a' 97
 */
        String s = "HadoopJava12138";
        int bigCount = 0;
        int smallCount = 0;
        int numberCount = 0;
        
        for(int i = 0; i < s.length(); i++){
    
    
            
            char c = s.charAt(i);
            
            if(c >= '0' && c <= '9'){
    
    
                numberCount++;
            }else if(c >= 'a' && c <= 'z'){
    
    
                smallCount++;
            }else if(c >= 'A' && c <= 'Z'){
    
    
                bigCount++;
            }
        }
        System.out.println("大写个数:"+bigCount);
        System.out.println("小写个数:"+smallCount);
        System.out.println("数字个数:"+numberCount);

2. 把一个字符串的首字母转成大写,其余的都是小写

/*
    需求:把一个字符串的首字母转成大写,其余的都是小写
    		方式一:
                1、先获取第一个字符
                2、再获取除了第一个以外的字符
                3、把第一步的字符转成大写
                4、把第二部获取的字符转成小写
                5、把第三步和第四步的字符串拼接
                6、输出
            方式二:
                1、把字符串全部转成小写
                2、获取第一个字符,转成大写
 */
String s = "HadoOPJava";
		//方式一
        String s1 = s.substring(0,1);
        String s2 = s.substring(1);

        s1 = s1.toUpperCase();
        s2 = s2.toLowerCase();

        String s3 = s1.concat(s2);
        //链式编程
        String s4 = s.substring(0,1)
                .toUpperCase()
                .concat(s.substring(1)
                        .toLowerCase());

        System.out.println(s3);
        System.out.println(s4);

		//方式二
		char c = s.charAt(0);
		//字符转大写方法
        c = Character.toUpperCase(c);
        String a = c + s.substring(1).toLowerCase();
        System.out.println(a);

3. 把一个字符串的首字母转成大写,其余的都是小写

把数组中的数据按照指定个格式拼接成一个字符串

/*
        把数组中的数据按照指定个格式拼接成一个字符串
            举例:int[] arr = {1,2,3};	输出结果:[1, 2, 3]

        分析:
            1、定义一个空字符串
            2、先在字符串前面拼接一个"["
            3、遍历该int型数组,获取到每一个元素
            4、判断是否读到了最后一个元素,如果是,在后面拼接上一个"]"
            5、输出
 */
		int[] arr = {
    
    1,2,3};
        String s = "[";

        for(int i = 0; i < arr.length; i++){
    
    
            if(i == arr.length-1){
    
    
                s += arr[i];
            }else {
    
    
                s += arr[i] + ",";
            }
        }
        s +="]";
        System.out.println(s);

4. 字符串翻转

/*
        字符串反转
            举例:键盘录入”abc”		输出结果:”cba”
            
            1、键盘录入一个字符串
            2、定义一个空的字符串
            3、将字符串转换成字符数组
            4、倒着遍历字符数组,得到每一个字符
            5、将获取到的每个字符拼接到新的字符换中
            6、输出
 */
 import java.util.Scanner;
 		
 		Scanner sc = new Scanner(System.in);
        String s = sc.next();
        
		String s1 ="";
        char[] c = s.toCharArray();
        for(int i = c.length-1; i >=0; i--){
    
    
            s1 += c[i];
        }
        System.out.println(s1);

4. 统计大串中小串出现的次数

/*
        统计大串中小串出现的次数
        举例:
        在字符串” woaijavawozhenaijavawozhendeaijavawozhendehenaijav”
        java 出现的次数
 */
		String s = "woaija vawozhenaija vawozhendeaija vawozhendehenaija ";
        String key = "123";

        int count = 0;
        while(true){
    
    
            int position = s.indexOf(key);
            if(position == -1){
    
    
                break;
            }
            s = s.substring(position + key.length());
            count++;
        }
        System.out.println(“出现次数为:”count);

猜你喜欢

转载自blog.csdn.net/qq_41464008/article/details/120679245