title: Weighted-random probability in Java
body: <p>I have a list of fitness values (percentages), which are ordered in descending order:</p>
  
  <pre><code>List&lt;Double&gt; fitnesses = new ArrayList&lt;Double&gt;();
  </code></pre>
  
  <p>I would like to choose one of these Doubles, with an extreme likelyhood of it being the first one, then decreasing likelyhood for each item, until the final one is close to 0% chance of it being the final item in the list.</p>
  
  <p>How do I go about achieving this?</p>
  
  <p>Thanks for any advice. </p>