对于输入字符串s(假设字符串只包含字母构成的单词和空格),完成如下功能: 1. 统计该字符串中字母c出现的次数 2. 求该字符串的逆 3. 输出该字符串中子串str的所有位置(无需考虑子串叠加现象) 4. 将字符串中每个单词的第一个字母变成大写并输出
import java.lang.*;
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner cin = new Scanner(System.in);
String str = cin.nextLine();
String str1 = cin.next();
char s1 = str1.charAt(0);
String str2 = cin.next();
StringBuffer ss = new StringBuffer(str);
ss.reverse();
int cnt = 0;
String str3 = new String();
String[] str4 = str.split(" ");
for(int i = 0;i < str.length();i++) {
if(s1 == str.charAt(i)) {
cnt++;
}
}
System.out.println(cnt);
System.out.println(ss);
int preStrLength = 0;
int cnt1 = 0;
while(true){
int pos = str.indexOf(str2);
if(pos==-1){
break;
}
if(cnt1 != 0)
System.out.print(' ');
//break;
System.out.print((pos + preStrLength));//字串位置
cnt1++;
str= str.substring(pos +str2.length());//截取
preStrLength +=(pos +str2.length());
}
System.out.println();
for(int i = 0;i < str4.length;i++)
{
str4[i] = str4[i].substring(0,1).toUpperCase() + str4[i].substring(1);
//str4[i] = str4[i].substring(0,1).toUpperCase()+str4[i].substring(1);
if(i==str4.length-1){
str3 = str3+str4[i];
}else{
str3 = str3+str4[i]+" ";
}
}
System.out.print(str3);
}
}