题解

题目

牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“nowcoder. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a nowcoder.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?

示例

输入:"nowcoder. a am I"
输出:"I am a nowcoder."

思路

这里用了String提供的,根据空格分隔字符串,得到的字存放进一个数组。那接下来就很容易了只要将数组翻转,将每个元素连接起来,中间加上空格“ ”,不过注意的点是,最后一次连接上元素,不需要加上空格,所以需要判断。

代码

public class Solution {
    public String ReverseSentence(String str) {
        if(str == null){
            return null;
        }else{
            String [] arr = str.split("\\s+");
            String result = "";
            for(int i=arr.length-1;i>=0;i--){
                if(i>0){
                    result+=arr[i]+" ";
                }else{
                    result+=arr[i];
                }
            }
            return result;
        }
        
    }
}