package com.test;import java.util.Random;
import java.util.concurrent.ThreadLocalRandom;public class M1001{public static void main(String[] args) {Random random = new Random();System.out.println("-----------产生1到10之间的随机数----------------");System.out.println(random.nextInt(10));ThreadLocalRandom threadRandom = ThreadLocalRandom.current();System.out.println(threadRandom.nextInt(10));System.out.println("-----------产生两个数之间的随机数----------------");System.out.println(threadRandom.nextInt(10,100));}
}
Random:生产一个伪随机数(通过相同的种子,产生的随机数是相同的)。
ThreadLocalRandom:是java7新增类,是Random的子类,在多线程并发情况下,THreadLocalRandom相对于Random可以减少多线程资源竞争,保证了线程的安全性。public class ThreadLocalRandom extends Random因为构造器是默认访问权限,只能在java.util包中创建对象,故提供了一个方法ThreadLocalRandom.current()用于返回当前类的对象.
UIID:通用唯一标识符,在一台机器上生成的数字,核心算法网卡、当地时间和随机数有关。
缺点:字符串太长了。
package com.test;import java.util.Random;
import java.util.UUID;
import java.util.concurrent.ThreadLocalRandom;public class M1001{public static void main(String[] args) {Random random = new Random();System.out.println("-----------产生1到10之间的随机数----------------");System.out.println(random.nextInt(10));ThreadLocalRandom threadRandom = ThreadLocalRandom.current();System.out.println(threadRandom.nextInt(10));System.out.println("-------- ---产生两个数之间的随机数----------------");System.out.println(threadRandom.nextInt(10,100));System.out.println("---------------------------");String uuid = UUID.randomUUID().toString();System.out.println(uuid);}
}
结果:20d86b2a-396d-4579-9717-a2cd0bdeed18