题目链接:https://leetcode-cn.com/problems/student-attendance-record-i/
前言:很简单的一道题。
一. 函数学习
1.读取字符串某一位置的字符,返回char类型。
char c = str.charAt(i);
2.字符串比较。
/*a,b均为字符串,比较两字符串是否相同,返回true或者false*/ a.equals(b);
/*比较两字符串的字典序,b小则负,a小则正,相等则零*/ a.compareTo(b);
3.读取某一字符在字符串上的位置。
int i = s.indexOf('A'); int j = s.lastIndexOf('A');
4.判断字符串是否包含某一子串。
/*返回true或者false*/ s.contains("LLL");
二. 题解思路
一个int类型变量统计A的数量,另一个统计L的数量,碰到L就加一,没碰到就置零。
三. 心得
题目很基础,唯一的问题就是统计L的数量时,三层嵌套if虽然能达到目的,但太过繁琐。即使不使用contains判断子串,也可以选择没碰到L就将数量置零的方式。
以及toCharArray()比charAt()空间复杂度更高。