1704. 判断字符串的两半是否相似
题目
题解
public boolean halvesAreAlike(String s) {
String a = s.substring(0, s.length() / 2);
String b = s.substring(s.length() / 2);
String h = "aeiouAEIOU";
int sum1 = 0, sum2 = 0;
for (int i = 0; i < a.length(); i++) {
if (h.indexOf(a.charAt(i)) >= 0) {
sum1++;
}
}
for (int i = 0; i < b.length(); i++) {
if (h.indexOf(b.charAt(i)) >= 0) {
sum2++;
}
}
return sum1 == sum2? true:false;
}
}
注:
思路很简单,就是对比,但是涉及到一些库函数的应用
charAt:
差不多可以这样理解,s.charAt(5)=s[5];
将字符串转化成了字符型数组。
substring:
字符串.substring(参数1,参数2);
参数1:字符串截取的起始下标,非负的整数
如果此参数是0,则是从字符串的第一个字符开始截取
参数2:截取结束位置的索引下标
注意:截取的结果,不包括结束位置的字符
public static void main(String[] args){
String s = "jixiaoqizhenshuai";
char what =s.charAt(5);
System.out.println(what);
}
}
结果:
indexOf:
查找是否有在a字符串中的某一个字符字符与h字符串相同的字符(好绕)。
个人感觉Java里面提供的库函数挺多的,也挺好用的,比C语言好多了,C语言全要自己写,但是java太多了,不太容易记。