Note that this algorithm removes the hand from the end of the deck. You have just passed some integers separated by comma. Most polymorphic algorithms in the Collections class apply specifically to List.
Unlike most naive attempts at shuffling, it's fair all permutations occur with equal likelihood, assuming an unbiased source of randomness and fast requiring exactly list.
This method is illustrated in the following polymorphic algorithm to replace all occurrences of a specified value with the sequence of values contained in the specified list.
The following is a program that uses the dealHand method in combination with Collections.
The Queue Interface. List; import java. For many common List implementations, such as ArrayList , the performance of removing elements from the end of the list is substantially better than that of removing elements from the beginning. Freddy Wong. The add and addAll operations always append the new element s to the end of the list. As you'd expect, the Iterator returned by List 's iterator operation returns the elements of the list in proper sequence.
Winston Gutkowski. But don't pass a primitive array to the asList method otherwise you won't get the desired result... This is also why you will likely get a compiler warning when you pass a String to Arrays.
Note the argument to listIterator in the preceding idiom.
It should be pointed out that Anish's code is redundant. Here's another polymorphic algorithm that uses the preceding swap method.
Ankit Garg. The List interface has two forms of the listIterator method. The listIterator methods provide this behavior.
String is both an Object and an Object. It provides us dynamic arrays in Java. Vinay M Raju wrote: This is also why you will likely get a compiler warning when you pass a String  to Arrays. Vinay M Raju. There is no constructor in Collection classes which takes an array. Though, it may be slower than standard arrays but can be helpful in programs where lots of manipulation in the array is needed.