华为机试练习题:HJ13 句子逆序

1、完整题目

HJ13 句子逆序

描述

将一个英文语句以单词为单位逆序排放。例如"I am a boy",逆序排放后为"boy a am I"

所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符

数据范围:输入的字符串长度满足 1≤n≤1000

注意本题有多组输入

输入描述:

输入一个英文语句,每个单词用空格隔开。保证输入只包含空格和字母。

输出描述:

得到逆序的句子

示例1

输入:I am a boy

输出:boy a am I

示例2

输入:nowcoder

输出:nowcoder

2、Java代码

  • trim() 方法:去除字符串首尾的空格;
  • split() 方法:按照指定分隔符来把字符串且分为字符串数组,默认分隔符为空格;
  • 采用 StringBuilder 类来操作有长度变化需求的字符串,可提升效率。
java 复制代码
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            StringBuilder sb = new StringBuilder();
            String[] arr = in.nextLine().trim().split(" ");
            for(int i=arr.length-1; i>=0; i--){
                sb.append(" ").append(arr[i].trim());
            }
            System.out.println(sb.toString().trim());
        }
    }
}
相关推荐
开发者小天1 天前
python中For Loop的用法
java·服务器·python
flushmeteor1 天前
JDK源码-基础类-String
java·开发语言
毕设源码-钟学长1 天前
【开题答辩全过程】以 基于ssm的空中停车场管理系统为例,包含答辩的问题和答案
java
不愿是过客1 天前
java实战干货——长方法深递归
java
小北方城市网1 天前
Redis 分布式锁高可用实现:从原理到生产级落地
java·前端·javascript·spring boot·redis·分布式·wpf
六义义1 天前
java基础十二
java·数据结构·算法
毕设源码-钟学长1 天前
【开题答辩全过程】以 基于SpringBoot的智能书城推荐系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
笨手笨脚の1 天前
深入理解 Java 虚拟机-03 垃圾收集
java·jvm·垃圾回收·标记清除·标记复制·标记整理
莫问前路漫漫1 天前
WinMerge v2.16.41 中文绿色版深度解析:文件对比与合并的全能工具
java·开发语言·python·jdk·ai编程
九皇叔叔1 天前
【03】SpringBoot3 MybatisPlus BaseMapper 源码分析
java·开发语言·mybatis·mybatis plus