LeetCode每日一题之最后一个单词的长度
给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串
思路
第一个方法,是直接调用String的chaAt()方法,遍历直接记录最后单词的长度
第二个方法,将字符串切片(split()方法)后存入数组,然后读取最后一位的长度
方法一:(使用java字符串拥有的charAt()方法,依次读取每个元素)
class Solution {
public int lengthOfLastWord(String s) {
int target = 0;
for (int i = s.length() - 1; i >= 0; i--) {
if (s.charAt(i) != ' ') {
target++;
} else if (target > 0) {
break;
}
}
return target;
}
}
//两个循环都结束了,还是没返回值,则说明needle字符串中本就不存在包含关系,那就返回一个-1
}
}
方法二:(将其切片后存入字符数组,然后读取即可)
class Solution {
public int lengthOfLastWord(String s) {
String []str= s.split(" ");
//按照‘ ’作为切片标准,将一连串字符串录入到字符数组中去
return str[str.length-1].length();
//返回数组中最后一个位置的字符串的长度即可
}
}