题解 | #字符串最后一个单词的长度#

字符串最后一个单词的长度

https://www.nowcoder.com/practice/8c949ea5f36f422594b306a2300315da

解决方案

一般思路

import java.util.Scanner;

public class LastWordLength {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String input = sc.nextLine(); // 读取输入的字符串
        String[] words = input.split(" "); // 将字符串分割成单词数组
        System.out.println(words[words.length - 1].length()); // 输出最后一个单词的长度
    }
}

 使用split(" ")获取空格前后的字符串(或者空串)。

进阶一:考虑到输入字符串中间有连续空格

 可以将连续的空格视为一个分隔符,使用正则表达式与split()方法:

String[] words = word.split("\\s+");

 这样,连续的空白字符(空格、制表符、换行符等)都会被视为单个分隔符。

进阶二:考虑到输入字符串末尾有空格

 无论末尾是单个空格还是连续空格,生成的结果数组都不会包含被这些分隔符分开的空字符串。这是因为 String.split() 方法的特定行为。当使用 split() 方法且不指定第二个参数时,Java 会移除结果数组末尾的所有空字符串。

 如果要保留结果数组的空字符串,可以指定split()第二个参数为-1。

"Hello  ".split(" ", -1);

进阶三:移除前后空格和空白字符

String input = sc.nextLine().trim();

算法路漫漫 文章被收录于专栏

吾将上下求索

全部评论

相关推荐

03-09 20:32
运营
牛客972656413号:成绩管理系统会不会有点太。。。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务