给你一个字符串 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 中至少存在一个单词
方法一、
按空格切分字符串,找到最后一个单词返回长度
/**
* 按空格切分字符串,找到最后一个单词返回长度
* @param s s
* @return int
*/
public int lengthOfLastWord(String s) {
String[] split = s.split(" ");
if(split.length > 0){
return split[split.length - 1].length();
}
return 0;
}
方法二、
去除头尾空格,找到最后一个空格的下标,切出最一个单词返回长度
/**
* 去除头尾空格,找到最后一个空格的下标,切出最一个单词返回长度
* @param s s
* @return int
*/
public int lengthOfLastWord(String s) {
String trim = s.trim();
if(trim.length() > 0){
int lastBlank = trim.lastIndexOf(" ");
//去除头尾空格后的字符串中间不存在空格
//说明当前字符串串只存在一个单词
if(lastBlank == -1){
return trim.length();
}
return trim.substring(lastBlank+1).length();
}
return 0;
}