计算字符串中的特定字符

时间:2014-07-31 12:50:35

标签: java

我无法找到arr[i].charAt(word)无效的原因。

public static void main(String[] args) {
    String [] arr = {"121", "333", "333"};
    int count = 0;
    int word = 0;
    for (int i = 0; i < arr.length; i++) {
        for (word = 0; word<arr[i].length(); word++) {
            if (arr[i].charAt(word) == 1) { //this line gives me trouble
                count++;
                System.out.println(count);
            }
        }
    }
}

为什么不呢?

2 个答案:

答案 0 :(得分:6)

charAt会返回char,因此您需要在将{1}作为char进行比较时将其放入单引号中:

if(arr[i].charAt(word)== '1')

答案 1 :(得分:1)

您没有将charchar进行比较,而是将charint进行比较。这恰好是合法的,因为char是内部的数字(非常简单,当然还有更多)。

将行更改为:

if(arr[i].charAt(word)== '1')

注意引号。