给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。
如果不存在最后一个单词,请返回 0 。
说明:一个单词是指由字母组成,但不包含任何空格的字符串。
示例:
输入: "Hello World"
输出: 5
思路:
1.判断是否为空串,为空则返回0
2.利用split以空格为分割
3.要判断一下给定字符串是否只包含空格,如是则返回0
4.返回字符串数组中最后一个字符串长度
代码如下:
public int lengthOfLastWord(String s) {
if(s.length()==0 || s==null){
return 0;
}
String[] ss=s.split(" ");
if(ss.length==0){
return 0;
}else{
return ss[ss.length-1].length();
}
}
总结:
string.trim方法:清楚掉字符串首尾的空格。
string.lastIndexOf()返回()中最后出现的位置索引
利用上述方法求解也也不错,代码如下:
public int lengthOfLastWord(String s) {
String tmp = s.trim();
if(tmp.length() == 0)return 0;
StringBuilder sb = new StringBuilder(tmp);
int index = tmp.lastIndexOf(' ');
// System.out.println("最后一个空格的位置:******"+index);
String result = sb.substring(index+1);
// System.out.println("拆分后的字符串:******"+result);
return result.length();
}