给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例 1:
输入:s = "Hello World"
输出:5
示例 2:
输入:s = " "
输出:0
提示:
1 <= s.length <= 104
s 仅有英文字母和空格 ' ' 组成
解题方法:
class Solution {
public int lengthOfLastWord(String s) {
//整体思想 从后面去解决此类问题 否则 会出现各种问题。
int end = s.length() - 1;//首先取出最后一位的索引
while(end >= 0 && s.charAt(end) == ' '){ //循环条件 如果最后一位不是空 那么循环结束
end--;
}
if(end < 0){ //判断循环条件小于0 表明不存在数值
return 0;
}
int start = end; //将结尾值赋值给开始
while(start >= 0 && s.charAt(start) != ' '){//循环条件 如果最后一位是空 那么循环结束
start--;
}
return end - start;
}
}