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);
} }
05-27 14:53