58. Length of Last Word-split的使用

本文通过一个具体例子探讨了如何处理字符串中的空白字符以准确获取最后一个单词的长度。对比两种不同的实现方式,强调了正确处理特殊情况的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

58. Length of Last Word

Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the length of last word in the string.

If the last word does not exist, return 0.

Note: A word is defined as a character sequence consists of non-space characters only.

For example, 
Given s = "Hello World",
return 5.

大致题意:给定一句话,返回其最后一个单词的长度;

我的代码:

public class Solution {
    public int lengthOfLastWord(String s) {
        if(s==" ") return 0;
        String[] arr = s.split(" "); 
        return arr[arr.length-1].length();
    }
}
别人家的代码:

public class Solution {
    public int lengthOfLastWord(String s) {
        String[] parts = s.split(" ");
        if (parts.length == 0) return 0;
        return parts[parts.length - 1].length();
    }
}
当我的代码在测试 “ ”时,报错:

Line 5: java.lang.ArrayIndexOutOfBoundsException: -1
//然而实际上代码是没有问题的,(Ps:还是有问题)

区别在于,“”“ ”是不一样的!

真是~~~~空格懵逼~~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值