uniquerandomgenerator.java

来自「jgap3.2 遗传算法工具包,嘿嘿,笨鸟先飞哦」· Java 代码 · 共 34 行

JAVA
34
字号
package org.jgap.util;

import org.jgap.*;
import java.util.*;

public class UniqueRandomGenerator {
  private int m_upper;

  private List m_resultSet;

  private RandomGenerator m_generator;

  public UniqueRandomGenerator(int a_upperBoundary, RandomGenerator a_generator) {
    m_upper = a_upperBoundary;
    m_resultSet = new Vector();
    m_generator = a_generator;
    for (int i = 0; i < m_upper; i++) {
      m_resultSet.add(new Integer(i));
    }
  }

  public int nextInt()
      throws IllegalStateException {
    int size = m_resultSet.size();
    if (size < 1) {
      throw new IllegalStateException("No more numbers left");
    }
    int index = m_generator.nextInt(size);
    Integer result = (Integer) m_resultSet.get(index);
    m_resultSet.remove(index);
    return result.intValue();
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?