题解 | #牛群消息传递# java
牛群消息传递
https://www.nowcoder.com/practice/28df6c40150a40b49c9c4d4ae1dd675d
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param s string字符串 * @return string字符串 */ public String reverseWords (String s) { // write code here String[] words = s.split(" "); // 将字符串按空格分割成单词数组 StringBuilder reversed = new StringBuilder(); for (int i = words.length - 1; i >= 0; i--) { if (!words[i].isEmpty()) { reversed.append( words[i]).append(" "); // 将倒序排列的单词添加到 StringBuilder 中 } } return reversed.toString().trim(); // 返回恢复顺序后的字符串,去除末尾的空格 } }
编程语言是Java。
这道题考察的主要知识点包括:
- 字符串操作
- 数组操作
- 循环遍历
以下是代码的解释:
- reverseWords 方法接受一个字符串 s 作为参数,表示包含混乱顺序单词的字符串。
- 使用 split 方法将字符串按空格分割成单词数组 words。
- 创建一个 StringBuilder 对象 reversed 用于存储倒序排列的单词。
- 使用循环从单词数组的最后一个单词开始遍历,将非空单词添加到 reversed 中,并在单词之间加一个空格。
- 将 reversed 转换成字符串并返回,同时使用 trim 方法去除末尾的空格。