Leetcode434. Number of Segments in a String

题目
Count the number of segments in a string, where a segment is defined to be a contiguous sequence of non-space characters.

Please note that the string does not contain any non-printable characters.

Example:

Input: “Hello, my name is John”
Output: 5
要求
给出一个字符串,计算字符串中的字段数
思路
除去字符串两端的空格,利用中间的空格来计算字段数,同时出现两个空格不能算一个字段。
代码

public class Solution {
    public int countSegments(String s) {
        //判断字符串是否长度为0或者都是空格,如果是则字段为0
       if(s.length()==0||s.trim().isEmpty()) return 0;
       //把字符串两端的空格都去掉
         String str=s.trim();
         int j=0;
         for(int i=0;i//空格减去‘A’是-33.如果这个字符是空格,但是下一个字符不是空格,则是一个字段
            if(str.charAt(i)-'A'==-33&&str.charAt(i+1)-'A'!=-33)
                j++;
         }
         if(j==0) return 1;
         else return j+1;  
    }
}

原题地址

你可能感兴趣的:(leetcode_Java)