/** {@inheritDoc} */ @Override public void setSeed(int seed) { setSeed(new int[]{seed}); }
/** * Creates a new ISAAC random number generator using a single long seed. * * @param seed Initial seed. */ public ISAACRandom(long seed) { setSeed(seed); }
/** * Creates a new ISAAC random number generator using an int array seed. * * @param seed Initial seed. If {@code null}, the seed will be related * to the current time. */ public ISAACRandom(int[] seed) { setSeed(seed); }
/** {@inheritDoc} */ @Override public void setSeed(long seed) { setSeed(new int[]{(int) (seed >>> 32), (int) (seed & 0xffffffffL)}); }
/** * Creates a new ISAAC random number generator. * <br/> * The instance is initialized using a combination of the * current time and system hash code of the instance as the seed. */ public ISAACRandom() { setSeed(System.currentTimeMillis() + System.identityHashCode(this)); }
/** {@inheritDoc} */ @Override public void setSeed(int[] seed) { if (seed == null) { setSeed(System.currentTimeMillis() + System.identityHashCode(this)); return; } final int seedLen = seed.length; final int rslLen = rsl.length; System.arraycopy(seed, 0, rsl, 0, FastMath.min(seedLen, rslLen)); if (seedLen < rslLen) { for (int j = seedLen; j < rslLen; j++) { long k = rsl[j - seedLen]; rsl[j] = (int) (0x6c078965L * (k ^ k >> 30) + j & 0xffffffffL); } } initState(); }
/** {@inheritDoc} */ @Override public void setSeed(long seed) { setSeed(new int[]{(int) (seed >>> 32), (int) (seed & 0xffffffffL)}); }
/** {@inheritDoc} */ @Override public void setSeed(long seed) { setSeed(new int[]{(int) (seed >>> 32), (int) (seed & 0xffffffffL)}); }
/** * Creates a new ISAAC random number generator using a single long seed. * * @param seed Initial seed. */ public ISAACRandom(long seed) { setSeed(seed); }
/** {@inheritDoc} */ @Override public void setSeed(int seed) { setSeed(new int[]{seed}); }
/** {@inheritDoc} */ @Override public void setSeed(int seed) { setSeed(new int[]{seed}); }
/** * Creates a new ISAAC random number generator using a single long seed. * * @param seed Initial seed. */ public ISAACRandom(long seed) { setSeed(seed); }
/** * Creates a new ISAAC random number generator using an int array seed. * * @param seed Initial seed. If {@code null}, the seed will be related * to the current time. */ public ISAACRandom(int[] seed) { setSeed(seed); }
/** * Creates a new ISAAC random number generator using an int array seed. * * @param seed Initial seed. If {@code null}, the seed will be related * to the current time. */ public ISAACRandom(int[] seed) { setSeed(seed); }
/** * Creates a new ISAAC random number generator. * <br/> * The instance is initialized using a combination of the * current time and system hash code of the instance as the seed. */ public ISAACRandom() { setSeed(System.currentTimeMillis() + System.identityHashCode(this)); }
/** * Creates a new ISAAC random number generator. * <br/> * The instance is initialized using a combination of the * current time and system hash code of the instance as the seed. */ public ISAACRandom() { setSeed(System.currentTimeMillis() + System.identityHashCode(this)); }
/** {@inheritDoc} */ @Override public void setSeed(int[] seed) { if (seed == null) { setSeed(System.currentTimeMillis() + System.identityHashCode(this)); return; } final int seedLen = seed.length; final int rslLen = rsl.length; System.arraycopy(seed, 0, rsl, 0, Math.min(seedLen, rslLen)); if (seedLen < rslLen) { for (int j = seedLen; j < rslLen; j++) { long k = rsl[j - seedLen]; rsl[j] = (int) (0x6c078965L * (k ^ k >> 30) + j & 0xffffffffL); } } initState(); }
/** {@inheritDoc} */ @Override public void setSeed(int[] seed) { if (seed == null) { setSeed(System.currentTimeMillis() + System.identityHashCode(this)); return; } final int seedLen = seed.length; final int rslLen = rsl.length; System.arraycopy(seed, 0, rsl, 0, FastMath.min(seedLen, rslLen)); if (seedLen < rslLen) { for (int j = seedLen; j < rslLen; j++) { long k = rsl[j - seedLen]; rsl[j] = (int) (0x6c078965L * (k ^ k >> 30) + j & 0xffffffffL); } } initState(); }