public static int countLetter(String[] x, String y){ int count = 0; for(int i = 0; i < x.length; i++){ for(int h = 0; h < x[i].length(); h++){ String yo = new String(x[i].substring(h,h+1)); if(yo==y){ count++;} } } return count; }}我的方法应该返回一个整数,该整数计算字母在数组的所有字符串中出现的总次数。(假设字符串是一个字母,我不能使用 charAt())。
2 回答
森林海
TA贡献2011条经验 获得超2个赞
问题在于字符串比较。您需要使用equals()或者可能equalsIgnoreCase()在比较 Java 中的 2 个字符串时:
public static int countLetter(String[] x, String y) {
int count = 0;
for (int i = 0; i < x.length; i++) {
for (int h = 0; h < x[i].length(); h++) {
String yo = new String(x[i].substring(h, h + 1));
if (yo.equals(y)) {
count++;
}
}
}
return count;
}
你也可以用一个char代替String:
public static int countLetter(String[] x, char y) {
int count = 0;
for (int i = 0; i < x.length; i++) {
for (int h = 0; h < x[i].length(); h++) {
if (x[i].charAt(h) == y) {
count++;
}
}
}
return count;
}
添加回答
举报
0/150
提交
取消