反转用户给定字符串的每个单词而不改变其位置

deb*_*jan -1 java string reverse

我需要一些帮助.我发现了一个问题,如"编写一个Java程序,它将反转用户给定字符串的每个单词而不改变它们的位置并使用任何内置函数."

我解决了翻译整个句子的代码,但我不知道如何解决这个问题.请帮我...

import java.io.*;
class test25 { 
    public static void main(String args[]) throws IOException { 
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Enter string: ");
        String s = br.readLine();
        String reverse = "";
        int length = s.length();

        for (int i = length - 1; i >= 0; i--)
            reverse = reverse + s.charAt(i);
        System.out.println("Result:" + reverse); 
    } 
}
Run Code Online (Sandbox Code Playgroud)

Max*_*min 5

1)拆分你的句子(使用split(),这将返回一个数组,比如说单词[])

2)反转数组字[]中的每个单词.

3)从数组字[]重建你的句子.


Uma*_*hta 5

String str = "hello world";
String revStr = reverseWordByWord(str);

 public String reverseWordByWord(String str){
        int strLeng = str.length()-1;
        String reverse = "", temp = "";

        for(int i = 0; i <= strLeng; i++){
            temp += str.charAt(i);
            if((str.charAt(i) == ' ') || (i == strLeng)){
                for(int j = temp.length()-1; j >= 0; j--){
                    reverse += temp.charAt(j);
                    if((j == 0) && (i != strLeng))
                        reverse += " ";
                }
                temp = "";
            }
        }
        return reverse;
    }
Run Code Online (Sandbox Code Playgroud)

输入:你好世界

输出:olleh dlrow