给出一个由若干个单词组成的句子,单词之间会有一个空格,请你反转这个句子。
输入格式
一行,包含一个由若干个单词组成的句子,单词总数不超过 100100,每个单词长度不超过 1010,仅由小写字母组成。
输出格式
一行字符串,表示反转后的句子。
输出时每行末尾的多余空格,不影响答案正确性
样例输入
wc is dog
样例输出
dog is wc
解题思路
1.将字符串首先拆分成字符串数组
2.将字符串数组存入集合当中,调用集合的reverse方法 (该方法是将指定列表中元素的顺序进行反转)
3.将单词反转后遍历输出
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class SwapWords {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();//输入字符串
SwapWords.reString(s);//调用重写字符串的方法
}
public static void reString(String s) {
//将传入的字符串参数拆分成字符串数组
String[] words=s.split(" ");
//将字符串数组存入集合中
List<String> list=new ArrayList<String>();
for(int i=0;i<words.length;i++) {
list.add(words[i]);//将数组的所有元素存入集合
}
//显示拆分后的数组
//System.out.println(Arrays.toString(words));
//运用集合的reverse方法反转单词后
Collections.reverse(list);//static void reverse(List<?> list)
//该方法:反转指定列表中元素的顺序。
//遍历输出
for(String word:list) {
System.out.print(word+" ");
}
}
}
运行结果如下

本文介绍了一种使用Java实现的句子反转算法,通过将输入的句子拆分成单词,利用集合的reverse方法来达到反转句子的效果。文章详细展示了代码实现过程,包括读取输入、拆分单词、反转集合以及输出结果。
5069

被折叠的 条评论
为什么被折叠?



