8、String练习题

String练习

    1、字符串反转,例如将"abc"变成"cba"

  2、统计一个字符串里面另一个字符串出现的次数,例如统计"monkey"在"I am monkey1024.monkey like banana.little monkey is smart."中出现的次数

  3、统计一个字符串中大写字母出现的次数

1.思路:字符串是由多个字符组成的,可以将字符串转换为字符(char)数组,然后倒序遍历数组即可

package com.monkey1024.string;
import java.util.Scanner;

/**
 * 字符串反转
 *
 */
public class Exercise01 {

    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        String input = s.next();
        //将输入的字符串转换为char类型数组
        char[] charArray = input.toCharArray();
        //遍历数组并倒着输出
        for(int i=charArray.length-1; i>=0; i--){
            System.out.print(charArray[i]);
        }
    }
}

2.思路:通过indexOf方法在大的字符串中查找小字符串的索引值,找到后将这个索引值和小字符串的长度相加,之后将大的字符串截取根据相加的结果截取子串,然后继续在剩下的字符串中查找小字符串的索引值,直到索引值返回-1为止

package com.monkey1024.string;
/**
 * 统计一个字符串里面另一个字符串出现的次数
 *
 */
public class Exercise02 {

    public static void main(String[] args) {
        String src = "I am monkey1024.monkey like banana.little monkey is smart.";
        String dest = "monkey";
        //定义出现的次数
        int count = 0;

        //定义索引值
        int index = 0;

        while((index = src.indexOf(dest)) != -1){
            count++;
            //将src截取子串
            src = src.substring(index + dest.length());
        }
        System.out.println("出现的次数是:" + count);
    }
}

3.思路:每个大写字母都是一个字符char,而大写字母A~Z是有范围的,只要统计这个范围内的字符即可

package com.monkey1024.string;


public class Exercise03 {

    public static void main(String[] args) {
        String src = "monkEY";
        //统计大写字母出现的次数
        int count = 0;

        //将字符串转换为字符数组
        char[] c = src.toCharArray();
        for(int i=0; i<c.length; i++){
            //判断是否为大写字母
            if(c[i] >= 'A' && c[i] <= 'Z'){
                count++;
            }
        }

        System.out.println("大写字母出现的次数:" + count);
    }

}

猜你喜欢

转载自www.cnblogs.com/zhuifeng-mayi/p/10119795.html