Java ThreadLocalRandom longs() 方法

2024年11月11日 | 阅读 3 分钟

Java ThreadLocalRandom 类的 longs() 方法返回一个几乎无限的伪随机 long 值流。此方法重写了 Random 类中的 longs。

语法

参数

不适用

返回值

此方法返回一个伪随机 long 值流。

示例

输出

stream of pseudorandom long value is: java.util.stream.LongPipeline$Head@136432db

Java ThreadLocalRandom longs(long streamSize) 方法

Java ThreadLocalRandom 类的 longs(long streamSize) 方法返回一个生成指定 streamSize 个伪随机 long 值的流。此方法重写了 Random 类中的 longs。

语法

参数

streamSize - 要生成的数值个数

返回值

此方法返回一个 long 值流。

Exception

IllegalArgumentException:如果 streamSize 小于零,则会抛出此异常。

示例 1

输出

stream of longs value is: java.util.stream.LongPipeline$Head@7382f612

示例 2

输出

Exception in thread "main" java.lang.IllegalArgumentException: size must be non-negative
	at java.base/java.util.concurrent.ThreadLocalRandom.longs(Unknown Source)
	at tests.ThreadLocalRandomLongsExample1.main(ThreadLocalRandomLongsExample2.java:7)

Java ThreadLocalRandom longs(long randomNumberOrigin, long randomNumberBound) 方法

Java ThreadLocalRandom 类的 longs(long randomNumberOrigin, long randomNumberBound) 方法返回一个几乎无限的伪随机 long 值流。每个值都必须符合给定的 origin(包含)和 bound(不包含)。此方法重写了 Random 类中的 longs。

语法

参数

randomNumberOrigin:每个随机值的原点(包含)。

randomNumberBound:每个随机值的边界(不包含)。

返回值

此方法返回一个伪随机 long 值流。

Exception

IllegalArgumentException: 如果 randomNumberOrigin 大于或等于 randomNumberBound,将抛出此异常。

示例 1

输出

stream of pseudorandom long value is: java.util.stream.LongPipeline$Head@136432db

示例 2

输出

Exception in thread "main" java.lang.IllegalArgumentException: bound must be greater than origin
	at java.base/java.util.concurrent.ThreadLocalRandom.longs(Unknown Source)
	at tests.ThreadLocalRandomLongsExample2.main(ThreadLocalRandomLongsExample2.java:7)

Java ThreadLocalRandom longs(long streamSize, long randomNumberOrigin, long randomNumberBound) 方法

Java ThreadLocalRandom 类的 longs(long streamSize, long randomNumberOrigin, long randomNumberBound) 方法返回一个生成指定 streamSize 个伪随机 long 值的流。每个值都必须符合给定的 origin(包含)和 bound(不包含)。此方法重写了 Random 类中的 longs。

语法

参数

streamSize - 要生成的数值个数

randomNumberOrigin - 每个随机值的原点(包含)

randomNumberBound - 每个随机值的边界(不包含)

返回值

此方法返回一个伪随机 long 值流。

Exception

  1. IllegalArgumentException:如果 streamSize 小于零,则会抛出此异常。
  2. IllegalArgumentException:如果 randomNumberOrigin 大于或等于 randomNumberBound,则会抛出此异常。

示例 1

输出

stream of pseudorandom long value is: java.util.stream.LongPipeline$Head@136432db

示例 2

输出

Exception in thread "main" java.lang.IllegalArgumentException: size must be non-negative
	at java.base/java.util.concurrent.ThreadLocalRandom.doubles(Unknown Source)
	at tests.ThreadLocalRandomLongsExample2.main(ThreadLocalRandomLongsExample1.java:7)