1. 程式人生 > >java 字串首字母大寫 查詢子串所在的位置

java 字串首字母大寫 查詢子串所在的位置

對於輸入字串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);

    }

}