net.sf.freecol.common.util
Class RandomChoice<T>

java.lang.Object
  extended by net.sf.freecol.common.util.RandomChoice<T>

public class RandomChoice<T>
extends java.lang.Object


Constructor Summary
RandomChoice(T object, int probability)
           
 
Method Summary
 T getObject()
           
 int getProbability()
           
static
<T> int
getTotalProbability(java.util.Collection<RandomChoice<T>> input)
           
static
<T> T
getWeightedRandom(java.util.Random random, java.util.Collection<RandomChoice<T>> input)
           
static
<T> T
select(java.util.Collection<RandomChoice<T>> input, int probability)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RandomChoice

public RandomChoice(T object,
                    int probability)
Method Detail

getProbability

public int getProbability()

getObject

public T getObject()

getWeightedRandom

public static <T> T getWeightedRandom(java.util.Random random,
                                      java.util.Collection<RandomChoice<T>> input)

getTotalProbability

public static <T> int getTotalProbability(java.util.Collection<RandomChoice<T>> input)

select

public static <T> T select(java.util.Collection<RandomChoice<T>> input,
                           int probability)