翻转单词顺序列

翻转单词顺序列

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


很简单:

public class Solution {
    public String ReverseSentence(String str) {
        if(str.length()==0){
            return "";
        }
        String[] words=str.split(" ");
        int length=words.length;
        if(length<2){
            return str;
        }
        String ans="";
        for(int i=length-1;i>0;i--){
            ans+=words[i];
            ans+=" ";
        }
        ans+=words[0];
        return ans;
    }
}

这里要注意,虽然StringBuilder是有reverse方法的,但是它的reverse是对所有字母都进行翻转,而这里只是需要对单词的顺序进行翻转而已,所以还是需要自己写

另外,只有StringBuilder和StringBuffer有reverse方法,String是没有的。

posted @ 2020-03-07 09:32  别再闹了  阅读(48)  评论(0)    收藏  举报