title: Sampling with no replacement in Java from an ArrayList
body: <p>I have an arrayList with 30 elements. I'd like to create many sublists of 15 elements from this list. What's the efficient way of doing so?</p>
  
  <p>Right now I clone the ArrayList and use remove(random) to do it, but I am sure this is too clumsy. What should I do instead?
  Does Java have a "sample" function like in R?</p>
  
  <p><br><br>
  <em>Clarification</em>: by sampling with no replacement I mean take <em>at random</em> 15 unique elements from the 30 available in the original list. Moreover I want to be able to do this repeatedly.</p>