예제 #1
0
 @Override
 public WPObject getObject() {
   if (weightedObjects == null) {
     weightedObjects = new TreeMap<Integer, WPObject>();
     totalObjectWeight = 0;
     for (WPObject object : objects) {
       int frequency = object.getAttribute(ATTRIBUTE_FREQUENCY, 100);
       totalObjectWeight += frequency;
       weightedObjects.put(totalObjectWeight, object);
     }
   }
   return weightedObjects.tailMap(random.nextInt(totalObjectWeight)).values().iterator().next();
 }