Java 如何反转组成句子的字符数组

Java 如何反转组成句子的字符数组,java,arrays,Java,Arrays,我试图找出如何使用一个字符数组,将一个句子向后(或无序)拼写出来,单词之间用空格分隔,以区分它们,并以正确/反向的格式对它们重新排序,这样就不用字符数组来拼写World Good Hello,而是像这样拼写Hello Good World[H','e','l','l','o','G','o','o','d','W','o','r','l','d'] 这或多或少是在黑暗中拍摄的 最后,我想将其作为字符数组返回。 代码: class Main { public static void

我试图找出如何使用一个字符数组,将一个句子向后(或无序)拼写出来,单词之间用空格分隔,以区分它们,并以正确/反向的格式对它们重新排序,这样就不用字符数组来拼写World Good Hello,而是像这样拼写Hello Good World[H','e','l','l','o','G','o','o','d','W','o','r','l','d']

这或多或少是在黑暗中拍摄的

最后,我想将其作为字符数组返回。

代码:

  class Main {

    public static void main(String[] args) {

    // World Good Hello
    // reverse to: Hello Good World

    char[] chrArray = new char[] {'W','o','r','l','d',' ','G','o','o','d',' ','H','e','l','l','o'};

    String str = String.valueOf(chrArray);
    String[] strArray = str.split(" ");
    char[] result = new char[0];

    for (int i = 0; i < strArray.length; i++) {

      for (int h = 0; h < strArray[i].length(); h++) {

        char[] temp = new char[strArray[i].charAt(h)];
        temp[temp.length - 1] = ' ';
        char[] both = Arrays.copyOf(result, result.length);

        List<character> temp2 = System.arraycopy(temp, 0, both, result.length, temp.length);
        result = temp2.toCharArray();
   }
  }
 }
}
主类{
公共静态void main(字符串[]args){
//世界好你好
//反过来说:你好,好世界
char[]chraray=new char[]{'W','o','r','l','d','d','G','o','d','H','e','l','l','o'};
String str=String.valueOf(chrray);
字符串[]strArray=str.split(“”);
字符[]结果=新字符[0];
对于(int i=0;i
我认为以下代码足以扭转局面:

String[] strArray = str.split(" ");
for(int i =strArray.length-1;i>=0;i--) {
    System.out.print(strArray[i] + " ");
}
这将输出:
Hello Good World

public static String reverseWords(String sentence) {
    String[] words = sentence.split("\\s+");
    StringBuilder buf = new StringBuilder(sentence.length());

    for (int i = words.length - 1; i >= 0; i--) {
        if (buf.length() > 0)
            buf.append(' ');
        buf.append(words[i]);
    }

    return buf.toString();
}

使用
reverseWords(…).tocharray()
获取字符数组。

您缺少导入。您的意思是
字符
,而不是
字符
列表
没有
tocharray()
method顺便说一句:不需要使用列表。
System.arraycopy
返回缺少导入的内容。使用Eclipse或任何其他IDE可以帮助您更高效地组织导入automatically@TungstenX他们通常不会发布问题,但问题很明显。你知道如何回复吗它也作为一个字符数组返回,或者基本上初始化了名为(result)的变量?您是否能够将它作为一个字符数组返回
reverseWords(“World Good Hello”)。ToCharray()
谢谢!这就是我要找的答案。