2016-09-16 5 views
0

こんにちは、私の仕事は、最初と最後の言葉を交換し、最初の単語スワッピングと変更スクリプトが

セイI入力

私の出力の最初の文字を大文字にすることです

fourTwo 3 fourone

であることが判明

は、ここで私はそう簡単にしてください初心者です私のコード ある

import java.util.Scanner; 
public class tryNumber2 { 

    public static void main(String[] args) 

    { 
     Scanner keyboard = new Scanner(System.in); 
     System.out.println("Enter any line with no punctuation"); 
     String line = keyboard.nextLine(); 
     System.out.println(line); 

     // First word to the end and capitalize. 
     { 
      int spacePosition = line.indexOf(" "); 
      String FirstWord = line.substring(0, spacePosition).trim(); 
      String MiddleOfSentence = line.substring(spacePosition, line.length()).trim(); 
      String FirstChar = MiddleOfSentence.substring(0, 1); 
      FirstChar = FirstChar.toUpperCase(); 
      MiddleOfSentence = FirstChar + MiddleOfSentence.substring(1, MiddleOfSentence.length()); 
      String LastWord = line.substring(line.lastIndexOf(' ') + 1); 
      System.out.println(LastWord + MiddleOfSentence + FirstWord); 
      keyboard.close(); 
     } 
    } 
} 

私が何かを忘れていた場合、私は私のエラーがどこにあるか知っているかいない...

答えて

0

をこの

public static void main(String[] args) { 
    Scanner keyboard = new Scanner(System.in); 
    System.out.println("Enter any line with no punctuation"); 
    //trim() removes all leading and trailing whitespaces in Java. This will be useful for 
    //the check we will perform next 
    String line = keyboard.nextLine().trim(); 
    int firstWordPos = line.indexOf(" "); 
    String firstWord = line.substring(0,firstWordPos); 

    int lastWordPos = line.lastIndexOf(" "); 

    if (lastWordPos < 0) 
    { 
     System.out.println(line); 
    } 

    else if(firstWordPos != lastWordPos) { 
     String lastWord = String.valueOf(line.charAt(lastWordPos + 1)).toUpperCase() + 
       line.substring(lastWordPos + 2); 

     String outputString = lastWord + " " + line.substring(firstWordPos+1, lastWordPos) + " " + firstWord; 
     System.out.println(outputString); 
    } 
    else { 
     String lastWord = String.valueOf(line.charAt(lastWordPos + 1)).toUpperCase() + 
       line.substring(lastWordPos + 2); 

     String outputString = lastWord + " " + line.substring(0, lastWordPos); 
     System.out.println(outputString); 
    } 
    keyboard.close(); 
} 
をお試しください

}

+0

金田さんは働いていますが、最初と最後の単語を交換しません – Beginner

+0

ああ申し訳ありませんが、最後の単語を追加して大文字にする必要があると思いました。私はあなたの質問を間違って読んだ。私のコードをOPで修正しました! – jmc

関連する問題