【leetcode】434-字符串中的单词数

还是先来看题目:

统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。

请注意,你可以假定字符串里不包括任何不可打印的字符。

示例:

输入: "Hello, my name is John"
输出: 5

一看,觉得这不简单吗,想着就得用字符串分割,直接用一个split函数就解决问题了。还是先正确的结果放上去吧。

思路也简单,首先将开头与末尾的空格通过trim()方法去掉,然后再按空格截取字符串。为什么选用“\\s+”是因为空格的个数不确定,如果直接用“ ”有多个空格在一起的情况则不能够通过。

class Solution {
    public int countSegments(String s) {
        String trimmed = s.trim();
        if(trimmed.equals("")){
            return 0;
        }
        String[] ss = trimmed.split("\\s+");
        return ss.length;
    }
}

最开始写的代码就是也没有调用trim方法,因为没有考虑到开始和末尾有空格的情况,结果就是通不过,然后又写上去之后还是不行,问题就出在没有考虑到中间多个空格的话截取是多个字符串。。。

总结:一些小细节也要考虑到,给的示例只是最基本最简单的例子,还要考虑到比较特殊的情况,一定要记得前面的考虑。

举一隅不以三隅反,这样不应该。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值