如何计算整数在ArrayList中出现的项目数?

时间:2015-03-11 14:35:20

标签: java arraylist

我的想法是建立一个列表,让用户以5个不同的整数写入(不必是偶数)然后写一个数字来查看该数字在列表中出现的时间。我该怎么做呢?这是我的示例代码,我遇到了以下问题:

package Listor;

import java.util.ArrayList;
import java.util.Scanner;

public class Tal {

    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        ArrayList<Integer> evenNumbersList = new ArrayList<>();
        System.out.print("Write 5 even numbers: ");
        int evenNumber = 0;
        for (int i = 0; i < 5; i++) {
            evenNumber = s.nextInt();
            evenNumbersList.add(evenNumber);

        }
        System.out.println(evenNumbersList);
        System.out.println("Write a number and see how many times it occurs: ");
        int intHappens = s.nextInt();
        int sum = 0;
        for (int i = 1; i < evenNumbersList.size(); i++) {
            if (i == intHappens) {
                sum += 1;
            }

        }

        System.out.println(sum);

    }

}

2 个答案:

答案 0 :(得分:0)

我看到两个错误:

1)您的for循环需要从0开始,而不是1。

2)您的if声明应为if (evenNumbersList.get(i) == intHappens)

答案 1 :(得分:0)

您可能希望迭代 evenNumberList 列表,并将列表中的值与 intHappens 进行比较。使用 for(Variabletype varname:List list) for-loop。阅读增强型For-Loops