題目描述
將一個英文語句以單詞為單位逆序排放。例如“I?am?a?boy”,逆序排放后為“boy?a?am?I”
所有單詞之間用一個空格隔開,語句中除了英文字母外,不再包含其他字符
接口說明
/**
?*?反轉句子
?*?
?*?@param?sentence?原句子
?*?@return?反轉后的句子
?*/
public?String?reverse(String?sentence);
輸入描述:
將一個英文語句以單詞為單位逆序排放。
輸出描述:
得到逆序的句子
輸入例子:
I am a boy
輸出例子:
boy a am I
逆序排放。例如“I?am?a?boy”,逆序排放后為“boy?a?am?I”
代碼:
import java.util.*;
public class Main {
?
public static void main(String[] args){
???????? Scanner sc=new Scanner(System.in);
???????? String s=sc.nextLine();
???????? ?for(int i=s.length()-1;i>=0;i--){
???if(s.charAt(i)==' '){
????for(int j=i+1;j<s.length();j++){
?????if(s.charAt(j)!=' ')
??????System.out.print(s.charAt(j));
?????else break;
????}
???
???System.out.print(s.charAt(i));}
???else continue;}
???for (int i=0;i<s.length() ;i++ )
???{
????????????? if(s.charAt(i)!=' ')
???? System.out.print(s.charAt(i));
???? else break;
???}
}
}
?
收獲:(1)判斷字符為空格:??if(s.charAt(i)==' ');
(2)思路:先找到空格,再順序輸出空格之前的字符,第一個單詞則順序輸出,遇到空格則停止。