首页 > 编程语言 > 详细

Java随机生成6位字符串

时间:2021-08-13 17:09:26      阅读:18      评论:0      收藏:0      [点我收藏+]

Java随机生成6位字符串



import java.util.Random;

/**
 * @author wangan
 */
public class SignUtil {

    private static final String BASIC = "123456789qwertyuiopasdfghjklzxcvbnm";

    public static String random(){
        char[] basicArray = BASIC.toCharArray();
        Random random = new Random();
        char[] result = new char[6];
        for (int i = 0; i < result.length; i++) {
            int index = random.nextInt(100) % (basicArray.length);
            result[i] = basicArray[index];
        }
        return new String(result);
    }
}

java.util.Random的使用

java.util.Random常用方法

+构造函数

Random()
创建一个新的随机数生成器。

Random(long seed)
使用单个long种子创建新的随机数生成器。

+方法

boolean nextBoolean()
返回一个伪boolean随机数。

void nextBytes(byte[] bytes)
生成随机字节并将它们放入用户提供的字节数组中。

double nextDouble()
返回下一个伪double,每个值在[0,1)之间。

float nextFloat()
返回下一个伪float,每个值在[0,1)之间。

double nextGaussian()
返回下一个伪随机高斯/正态分布double值,产生的数字是符合标准正态分布的。

int nextInt()
返回下一个伪int随机数

int nextInt(int bound)
返回int随机数,每个值在[0,bound)之间。

long nextLong()
返回下一个伪long随机数

void setSeed(long seed)
使用单个long种子设置此随机数生成器的种子。

DoubleStream doubles()
创建一个无穷大的double类型的数字流,每个值在[0,1)之间。

DoubleStream doubles(double randomNumberOrigin, double randomNumberBound)
创建一个无穷大的double类型的数字流,每个值在[randomNumberOrigin,randomNumberBound)之间。。

DoubleStream doubles(long streamSize)
返回产生给定streamSize数量的伪随机double值的流,每个值在[0,1)之间。

DoubleStream doubles(long streamSize, double randomNumberOrigin, double randomNumberBound)
返回产生给定streamSize数量的伪随机double值的流,每个伪随机值在[randomNumberOrigin,randomNumberBound)之间。

IntStream ints()
创建一个无穷大的伪随机int值流。

IntStream ints(int randomNumberOrigin, int randomNumberBound)
创建一个无穷大的伪随机int值流,每个值在[randomNumberOrigin,randomNumberBound)之间。

IntStream ints(long streamSize)
返回产生给定streamSize数量的伪随机int值的流。

IntStream ints(long streamSize, int randomNumberOrigin, int randomNumberBound)
返回产生给定streamSize数量的伪随机int值的流,每个伪随机值在[randomNumberOrigin,randomNumberBound)之间。

LongStream longs()
创建一个无穷大的伪随机long值流。

LongStream longs(long streamSize)
返回产生给定streamSize数量的伪随机long值的流。

LongStream longs(long randomNumberOrigin, long randomNumberBound)
创建一个无穷大的伪随机long值流,每个值在[randomNumberOrigin,randomNumberBound)之间。

LongStream longs(long streamSize, long randomNumberOrigin, long randomNumberBound)
返回产生给定streamSize伪随机数的流long,每个伪随机在[randomNumberOrigin,randomNumberBound)之间。

Random的那些坑,如下结果永远是一个值

      for(int i =0 ;i<50;i++){
          Random random = new Random(10000);
          System.out.println("-----------"+random.nextInt(10000) );
      }

所以请在循环之前实例化random对象,如下:

      Random random = new Random(10000);
      for(int i =0 ;i<50;i++){
          System.out.println("-----------"+random.nextInt(10000) );
      }

注意:int nextInt(int bound)方法是是前闭后开区间。

Java随机生成6位字符串

原文:https://www.cnblogs.com/ichigo1120/p/15137859.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!