题目
给你一个字符串 s
,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
示例 1:
输入:s = "Hello World" 输出:5
示例 2:
输入:s = " fly me to the moon " 输出:4
示例 3:
输入:s = "luffy is still joyboy" 输出:6
提示:
1 <= s.length <= 104
s
仅有英文字母和空格' '
组成s
中至少存在一个单词
题解代码
class Solution {
public int lengthOfLastWord(String s) {
int target = 0;
for(int wordLength = s.length()-1;wordLength>=0;wordLength--){
if(s.charAt(wordLength)!=' '){
target++;
}else if(target!=0){
return target;
}
}
return target;
}
}
解题思路
获取所计算字符串总长度,定义一个全局目标变量target为0(即最后一个字符的长度结果),利用字符串的charAt()函数,从字符串的最后一个字符开始遍历,如果字符串出现所在字符不是‘ ’(空格符),target变量自增1;如果字符串出现所在字符是‘ ’(空格符)且target数字不为0(即字符串最后的字符不为' '(空格)),则target为所预期想要的结果。