Using java.util.Arrays.asList, why its shows different list size for int (Primitive type) and String array?
a) With int
List cannot hold primitive values because of java generics (see similar question). So when you call Arrays.asList(ar) the Arrays creates a list with exactly one item - the int array ar.
EDIT:
Result of Arrays.asList(ar) will be a List, NOT List and it will hold one item which is the array of ints:
[ [1,2,3,4,5] ]
You cannot access the primitive ints from the list itself. You would have to access it like this:
list.get(0).get(0) // returns 1
list.get(0).get(1) // returns 2
...
And I think that's not what you wanted.