object Randomizer
- Source
- Randomizer.scala
- Alphabetic
- By Inheritance
- Randomizer
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def apply(seed: Long): Randomizer
A Randomizer, initialized with the specified seed value.
A Randomizer, initialized with the specified seed value.
Since Randomizer is only pseudo-random, and is actually deterministic based on the seed, this lets you re-create a set of "random" values. If you use the same seed over and over, you will get the same values.
This is particularly useful during testing and debugging. If you save the seed that is used to generate your initial data, you can then re-run the test using that seed to reliably re-create your "random" events.
If you want to create an adequate seed to feed into here, the value of System.currentTimeMillis() is reasonable (and is used in Randomizer.default()). It's a somewhat weak seed, but decent for most purposes.
- seed
A number that will be used to initialize a new Randomizer.
- returns
A Randomizer, ready to begin producing random values.
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def default(): Randomizer
Creates a new Randomizer, whose seed is initialized based on the current time.
Creates a new Randomizer, whose seed is initialized based on the current time.
This should not be considered a strong source of randomness -- in cases where high entropy really matters, it's a bit mediocre -- but for general purposes it's typically good enough.
- returns
A Randomizer, ready to begin producing random values.
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def shuffle[T](xs: List[T], rnd: Randomizer): (List[T], Randomizer)
Randomizes the order of the provided List.
Randomizes the order of the provided List.
This takes a pre-created Randomizer, that you pass in. This means that, if you re-create a Randomizer with the same seed over and over, you will get the same shuffled order.
This takes O(n) time.
- T
The type of the passed-in values.
- xs
A List of values.
- rnd
A Randomizer that will be used to shuffle the values.
- returns
The List of values, rearranged in random order.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()