class Solution { public int countBinarySubstrings(String s) { //定义 last变量 代表 前一种数字的数量 int last = 0; //定义 cur变量 代表 当前数字的数量 int cur = 1; //定义 res变量,统计结果数 int res = 0; //因为要比较前后俩个数,所以从1开始遍历 for(int i = 1; i < s.length(); i++){ if(s.charAt(i) == s.charAt(i-1)){ cur++; }else{ last = cur; cur = 1; } //如果前一种数量大于当前数字的数量,结果+1 ,仔细品味 // 0000111 last = 4; cur = 3, 结果 01 0011 000111 res = 3; if(last >= cur) res++; } return res; } }