/**
*
* 给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。
* 如果不存在最后一个单词,请返回 0 。
*
* 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
*
*/
/**
* @param s 原始字符串
* @return 返回最后一个子串
*/
public int lengthOfLastWord(String s) {
//定义end保存最后一个非空字符串的最后一个字符索引,默认为len - 1,考虑最后一个字符串为空的情况
int end = s.length() - 1;
//循环移除最后的空串
while (end >= 0 && s.charAt(end) == ‘ ‘){
end--;
}
//判断字符串是否为空串
if (end < 0){
return 0;
}
//定义start保存最后一个非空字符串的第一个字符索引
int start = end;
//循环寻找start位置
while (start >= 0 && s.charAt(start) != ‘ ‘){
start--;
}
//循环结束时start已经指向最后一个字符串的第一个字符索引
return end - start;
}
原文:https://www.cnblogs.com/mx-info/p/14840127.html