LeetCode第五十八题

题目:

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.

题目大致描述:

给定一个字符串s由上/小写字母和空格字符组成,返回字符串中最后一个单词的长度。如果最后一个词不存在,返回0。

解法一:

思路:将字符串分割为字符数组,然后将数组的最后一个拿出来判断,是否为单词,若是,则返回长度,若不是,返回0

提交代码(成功):

遇到问题:

1:当s为“       ”出现错误

2:当s以“ ”结尾时出现错误

解法二(未验证):

心得:

1:String.IsNullOrEmpty与String.IsNullOrWhiteSpace的区别:

最开始发现前者比普通的判断上比较方便,也没有注意到后者,今天在遇到当字符串是由空格组成的时候,此时用前者来判断就不会发到预期的效果。String.IsNullOrWhiteSpace,此方法只在framework4.0以上才能使用,官方的解释是:指示指定的字符串是 null、空还是仅由空白字符组成。

2:Trim()、TrimStart()、TrimEnd()

Trim():去除字符串前后的空格,从外到内删除

TrimStart():去除字符串开始的空格

TrimEnd():只删除字符串尾部的空格

原文地址:https://www.cnblogs.com/joyandjoys/p/8536122.html