当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java ThreadLocalRandom longs()用法及代码示例


Java ThreadLocalRandom 类的 longs() 方法返回一个有效无限的伪随机long值流。此方法覆盖 Random 类中的 long。

用法:

public LongStream longs()

参数:

NA

返回值:

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

示例

import java.util.concurrent.ThreadLocalRandom;

public class ThreadLocalRandomLongsExample1 {
    public static void main(String[] args) {
    	
    	// Returns a stream of pseudorandom long values   	
    	System.out.println("stream of pseudorandom long value is:" +ThreadLocalRandom.current().longs());
    }
}

输出:

stream of pseudorandom long value is:[email protected]

Java ThreadLocalRandom longs(long streamSize) 方法

Java ThreadLocalRandom 类的 longs(long streamSize) 方法返回一个流,该流产生给定的 streamSize 数量的伪随机long值。此方法覆盖 Random 类中的 long。

用法:

public LongStream longs(long streamSize)

参数:

streamSize- 它是要生成的值的数量

返回值:

此方法返回一个long值流。

异常:

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

例子1

import java.util.concurrent.ThreadLocalRandom;  
  
public class ThreadLocalRandomLongsExample4 {  
    public static void main(String[] args) {  
          
        // Returns a stream of longs values      
        System.out.println("stream of longs value is:" +ThreadLocalRandom.current().longs(1500));  
    }  
}

输出:

stream of longs value is:[email protected]

例子2

import java.util.concurrent.ThreadLocalRandom;  
  
public class ThreadLocalRandomLongsExample5 {  
    public static void main(String[] args) {  
          
        // Returns a stream of longs values      
    	System.out.println("stream of long value is:" +ThreadLocalRandom.current().longs(-20));  
    }  
}

输出:

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值流。每个值必须符合给定的原点(包含)和边界(不包含)。此方法覆盖 Random 类中的 long。

用法:

public LongStream longs(long randomNumberOrigin, long randomNumberBound)

参数:

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

randomNumberBound:它是每个随机值的界限(不包括)。

返回值:

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

异常:

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

例子1

import java.util.concurrent.ThreadLocalRandom;

public class ThreadLocalRandomLongsExample2 {
    public static void main(String[] args) {
    	
    	// Returns a stream of pseudorandom long values   	
    	System.out.println("stream of pseudorandom long value is:" +ThreadLocalRandom.current().longs(20, 30));
    }
}

输出:

stream of pseudorandom long value is:[email protected]

例子2

import java.util.concurrent.ThreadLocalRandom;

public class ThreadLocalRandomLongsExample3 {
    public static void main(String[] args) {
    	
    	// Returns exception because origin is greater than bound  	
    	System.out.println("stream of pseudorandom long value is:" +ThreadLocalRandom.current().longs(30, 10));
    }
}

输出:

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值。每个值必须符合给定的原点(包含)和边界(不包含)。此方法覆盖 Random 类中的 long。

用法:

public LongStream longs(long streamSize, long randomNumberOrigin, long randomNumberBound)

参数:

streamSize- 它是要生成的值的数量

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

randomNumberBound- 它是每个随机值的界限(不包括)

返回值:

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

异常:

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

例子1

import java.util.concurrent.ThreadLocalRandom;  
  
public class ThreadLocalRandomLongsExample6 {  
    public static void main(String[] args) {  
          
        // Returns a stream of pseudorandom long values         
        System.out.println("stream of pseudorandom long value is:" +ThreadLocalRandom.current().longs(10, 20, 30));  
    }  
}

输出:

stream of pseudorandom long value is:[email protected]

例子2

import java.util.concurrent.ThreadLocalRandom;  
  
public class ThreadLocalRandomLongsExample7 {  
    public static void main(String[] args) {  
          
        // Returns exception because steamSize is negative        
        System.out.println("stream of pseudorandom double value is:" +ThreadLocalRandom.current().doubles(-10, 20, 30));  
    }  
}

输出:

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)






相关用法


注:本文由纯净天空筛选整理自 Java ThreadLocalRandom longs() method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。