我的想法是建立一个列表,让用户以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);
}
}
答案 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