Given a string s consists of upper/lower-case alphabets and empty space characters ' '
, return the length of last word in the string.
If the last word does not exist, return 0.
Note: A word is defined as a character sequence consists of non-space characters only.
For example,
Given s = "Hello World"
,
return 5
.
解法:1.注意字符串两端的空格
2.字符串比较方法为equals(),字符比较为==
3 可以使用start来标记最后一个空格的下标,或者使用正则表达式
import java.util.regex.*;
public class Solution {
public int lengthOfLastWord(String s) {
if(s==null||"".equals(s.trim())) //注意字符串比较的时候,使用equals()
return 0;
s=s.trim();
char[] c=s.toCharArray();
int start=0;
int i=0;
for(;i<c.length;i++){
if(c[i]==' ') start=i;
}
return start==0?c.length:c.length-start-1;
}
// public int lengthOfLastWord(String s) {
// if(s==null||s.trim()=="") return 0;
// s=s.trim(); //先去除两端的空格
// Pattern p=Pattern.compile("([a-zA-Z]+$)");
// Matcher m=p.matcher(s);
// int len=0;
// if(m.find()){
// String s1=m.group(1);
// len=s1.length();
// }
// return len;
// }
}