java - 如何反转 Java String 的单词

标签 java string input

我试图编写一个程序来从扫描仪获取字符串输入,但我想分解输入的字符串并反转单词的顺序。这是我到目前为止所拥有的。

Scanner input = new Scanner(System.in);
System.out.println("Enter your string");
StringBuilder welcome = new StringBuilder(input.next());
int i;
for( i = 0; i < welcome.length(); i++ ){
    // Will recognize a space in words
    if(Character.isWhitespace(welcome.charAt(i))) {
        Character a = welcome.charAt(i);
    }   
}

我想要做的是在它识别出空格之后,捕获它之前的所有内容,依此类推每个空格,然后重新排列字符串。

最佳答案

提问后编辑。

import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;

public class Main {

   public static void main( String[] args ) {
      final String welcome = "How should we get words in string form a List?";
      final List< String > words = Arrays.asList( welcome.split( "\\s" ));
      Collections.reverse( words );
      final String rev = words.stream().collect( Collectors.joining( ", " ));
      System.out.println( "Your sentence, reversed: " + rev );
   }
}

执行:

Your sentence, reversed: List?, a, form, string, in, words, get, we, should, How

关于java - 如何反转 Java String 的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15910092/

相关文章:

java使用机器人类发送击键

string - Hiveql - RIGHT() LEFT() 函数

javascript - 为什么将输入值设置为 undefined 不为空呢?

ios - 如何在我的 html5 日期输入上设置最大值,以便它可以被 iOS 版 safari 识别?

java - 如何提高 AsyncTask 的速度?

java - System.load 给出不满意的链接错误

java - 打印字符串实例的地址

c - 编写函数reverse(s)的递归版本,该函数将字符串s反转到位。我似乎找不到错误

java - 在不分配字符串的情况下在Java中将字符串转换为int

php - 如何找到修改了哪个输入字段?