- Random生成的都是伪随机数,那么什么是伪随机数呢。计算机中用软件生成的随机数,都是按照一定的算法而得来的,是不可能得到真正意义上的随机数,所以都是伪随机数,即它们都有重复的可能。
- 代码如下:
public static void main(String[] args) { randomString(5); randomInt(100); } /** * 生成随机字符串 */ public static void randomString(int len){ String s = "abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; StringBuffer sb = new StringBuffer(); Random m = new Random(); for(int i=0;i<len;i++){ /** * 返回一个伪随机数,它是从此随机数生成器的序列中取出的、 * 在 0(包括)和指定值(不包括)之间均匀分布的 int值。 */ int n = m.nextInt(s.length()-1); sb.append(s.charAt(n)); } System.out.println(sb.toString()); } /** * 生成随机数 * 当该类的两个对象使用相同的种子,并且按照相同的顺序来生成随机数时,它们就得到了相同的随机数 * 如果把方法中注释掉的部分放开,就会得到不同的随机数了 */ public static void randomInt(int it){ Random r1 = new Random(it); System.out.println("r1:"+r1.nextInt(10)); System.out.println("r1:"+r1.nextInt());//返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。 Random r2 = new Random(it); //System.out.println("r2:"+r2.nextInt()); System.out.println("r2:"+r2.nextInt(10)); System.out.println("r2:"+r2.nextInt()); }
Random浅析以及获得随机字符串
最新推荐文章于 2022-11-01 20:30:00 发布