Exit Exit - 6 months ago 11
Java Question

More than once in an arrayList with user input

In the code below I need to check if a number appears more than once in an

ArrayList
. The user inputs a number to consult, and if it exist in the
array
and there are more than one the messages, "appears more than once is displayed". I have been trying to do this but I don't know how.

This is the
main
class:

ArrayList<Integer> list = new ArrayList<>();
list.add(3);
list.add(2);
list.add(7);
list.add(2);

System.out.println("Type a number: ");
int number = Integer.parseInt(sc.nextLine());
if (Metodos.moreThanOne(list, number)) {
System.out.println(number + " appears more than once.");
} else {
System.out.println(number + " does not appear more than once.");
}


This is the method:

public static boolean moreThanOne(ArrayList<Integer> list, int number) {
for (Integer in : list) {
if (list.contains(number) && in==in) {
return true;
}
}
return false;
}

Answer

You can use this code:

if (list.lastIndexOf(element) != list.indexOf(element)) {
  return true; // you have at least two numbers
} else {
  return false; // element is not exist or you have only one element
}