Java的随机数

来源:互联网 发布:淘宝人群标签在哪里看 编辑:程序博客网 时间:2024/05/21 17:09

1.随机数

随机地生成的任意的一个数(理论上讲具有不可预知性).

Random类

用于生产一个伪随机数(通过相同的种子,产生的随机数是相同的)。
public Random():使用默认的种子(以当前系统时间作为种子)。
public Random(long seed):根据指定的种子。

import java.util.Random;public class RandomDemo {public static void main(String[] args) {Random random = new Random();System.out.println(random.nextBoolean());//boolean类型的随机数System.out.println(random.nextLong()); //long类型的随机数System.out.println(random.nextInt()); //int类型的随机数System.out.println(random.nextInt(100)); //0~100  包含0不包含100的随机数}}
ThreadLocalRandom

是Java7新增类,是Random类的子类,在多线程并发情况下,ThreadLocalRandom相对于Random可以减少多线程资源竞争,保证了线程的安全性。
因为构造器是默认访问权限,只能在java.util包中创建对象,故,提供了一个方法ThreadLocalRandom.current()用于返回当前类对象.

import java.util.concurrent.ThreadLocalRandom;public class RandomDemo {public static void main(String[] args) {ThreadLocalRandom localRandom = ThreadLocalRandom.current();System.out.println(localRandom.nextInt(50, 100)); //50~100  包含50不包含100的随机数}}
UUID

通用惟一识别:Universally Unique Identifier; 在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。UUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随即数来生成UUID.我们一般用来表示:随机的唯一的字符串.

import java.util.UUID;public class RandomDemo {public static void main(String[] args) {String uuid = UUID.randomUUID().toString();System.out.println(uuid); //结果:20b34958-00ba-4b6e-b51e-28a065e73254}}



原创粉丝点击