58. Length of Last Word
方法一:
我直接用了java自带的split功能,比较赖皮
需要注意的就是只有空格的string会被裂成0个子串,所以处理一下
1 public int lengthOfLastWord(String s) { 2 if(s == null || s.length() == 0) { 3 return 0; 4 } 5 String[] splitted = s.split(" "); 6 if(splitted.length == 0) { 7 return 0; 8 } 9 return splitted[splitted.length - 1].length(); 10 }
bug记录:
就是如果是空串,记得处理一下
方法二:
普通的方法,从后面往前找,找到第一个不是空格的开始计数,数到第一个空格或者开头,返回长度
1 if(s == null || s.length() == 0) { 2 return 0; 3 } 4 int i = s.length() - 1; 5 while(i >= 0 && s.charAt(i) == ' ') { 6 i--; 7 } 8 int cnt = 0; 9 while(i >= 0 && s.charAt(i) != ' ') { 10 cnt++; 11 i--; 12 } 13 return cnt; 14 }