根据空格拆分字符串

Split Strings based on white spaces

(标题可能会产生误导。我一直认为最困难的部分是找到合适的标题 :D)

好吧,句子只是(长)字符串。我想以相反的方式显示这些句子。示例:"Whosebug is a community of awesome programmers" 将变为 "programmers awesome of community a is Whosebug".

所以我的想法是有一个分隔符,这里是空白space。每当输入文本并按下 space 栏时,将该单词保存在一个列表中,一个 ArrayList,然后在 textView 中以倒序显示它们。

到目前为止我只能输出文本但没有空白 spaces (programmersawesomeofcommunityaisWhosebug) 并且只能使用一个按钮。我使用下面的代码来做到这一点:

@Override
        public void onClick(View v) {
            String[] sentence = input.getText().toString().split(" "); //This split() method is the culprit!
            ArrayList<String> wordArray = new ArrayList<>();
            for (String word : sentence) {
                    wordArray.add(word);
            }
            Collections.sort(wordArray);
            StringBuilder invertedSentence = new StringBuilder();
            for (int i = wordArray.size(); i > 0; i--) {
                invertedSentence.append(wordArray.get(i - 1));
            }
            output.setText(invertedSentence.toString());
        }
    });

当系统检测到白色 space 时,如何将句子作为拆分词保存(自动)在列表中?并在输出句子中添加空格spaces?

感谢您的宝贵时间。

许多评论都有很好的建议,但您可以使用以下一种方法:

    String[] sentence = new String("Whosebug is a community of awesome programmers").split(" ");
    ArrayList<String> wordArray = new ArrayList<>();
    for (String word : sentence) {
       wordArray.add(0, word);
    }

    String backwards = String.join(" ", wordArray);
    System.out.println(backwards);

输出

programmers awesome of community a is Whosebug