题目描述
将一个英文语句以单词为单位逆序排放。例如“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)思路:先找到空格,再顺序输出空格之前的字符,第一个单词则顺序输出,遇到空格则停止。