统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。
请注意,你可以假定字符串里不包括任何不可打印的字符。
示例:
输入: “Hello, my name is John”
输出: 5
其实很简单的一道题:需要注意的时不要管测试中的逗号,那个时唬人的,只管空格就行
class Solution {
public int countSegments(String s) {
int result = 0;
char []tem = s.toCharArray();
boolean flag = true;
for (int i = 0; i < s.length(); i++) {
char c = tem[i];
if(c == ' '){
flag = true;
}
if(c != ' ' && flag ){
result++;
flag = false;
}
}
return result;
}
}
其实这个更好理解,两个执行的效率都一样的
class Solution {
public int countSegments(String s){
//check the vaild
if(null == s){
return 0;
}
s = s.trim();
if(0 == s.length()){
return 0;
}
//get the character array,according to the String object
char[] chs = s.toCharArray();
//define the counter to count the number of word
int count = 0;
//遍历数组
for(int i =0;i+1<chs.length;i++){
if(' ' == chs[i] && ' ' != chs[i+1]){
count++;
}
}
//plus the last word
return count+1;
}
}