5

Okay, I was trying to do some conditional checks and noticed this returned false.... Something I'm missing?

int test = 1;

int[] testing= {1,3};

System.out.println(Arrays.asList(testing).contains(test) );  //false???
Hungry Blue Dev
  • 1,313
  • 16
  • 30
Doc Holiday
  • 9,928
  • 32
  • 98
  • 151

1 Answers1

14

Arrays.asList is a generic method where the generic type variable is used in the vararg parameter. Primitive types don't work with generics.

Therefore, after

Arrays.asList(testing)

the List returned contains a single element, an array of type int.

Your test would pass if testing was declared as an Integer[].

Sotirios Delimanolis
  • 274,122
  • 60
  • 696
  • 724