问题是我需要某种方法来找出当要求输入特定数字时数组列表是否包含重复数字。
我得到的基本代码是:
public static boolean moreThanOnce(ArrayList<Integer> list, int number) {
// write your code here
}
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
ArrayList<Integer> list = new ArrayList<Integer>();
list.add(3);
list.add(2);
list.add(7);
list.add(2);
System.out.println("Type a number: ");
int number = Integer.parseInt(reader.nextLine());
if (moreThanOnce(list, number)) {
System.out.println(number + " appears more than once.");
} else {
System.out.println(number + " does not appear more than once.");
}
}
Run Code Online (Sandbox Code Playgroud)
老实说,我需要帮助来决定要走的方向。由于如果对象出现两次或更多次,它需要工作,所以当它检测到出现特定数字时,我不能简单地翻转布尔值,因为如果该数字出现3次,它将失败。
我感谢有关如何进行的一些建议。
您可以使用Collections.frequency(list, object)ArrayList中的出现对象计数
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
ArrayList<Integer> list = new ArrayList<Integer>();
list.add(3);
list.add(2);
list.add(7);
list.add(2);
System.out.println("Type a number: ");
int number = Integer.parseInt(reader.nextLine());
if (Collections.frequency(list, number)>1 ) {
System.out.println(number + " appears more than once.");
} else {
System.out.println(number + " does not appear more than once.");
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
517 次 |
| 最近记录: |