java中使用uuid函数_java生成随机数

java中使用uuid函数_java生成随机数什么是UUID?UUID是UniversallyUniqueIdentifier的缩写,它是在一定的范围内(从特定的名字空间到全球)唯一的机器生成的标识符。UUID具有以下涵义:经由一定的算法机器生成为了保证UUID的唯一性,规范定义了包括网卡MAC地址、时间戳、名字空间(Namespace)、随机或伪随机数、时序等元素,以及从这些元素生成UUID的算法。UUID的复杂特性在保证了其唯一性的同…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

什么是UUID?

UUID是Universally Unique Identifier的缩写,它是在一定的范围内(从特定的名字空间到全球)唯一的机器生成的标识符。UUID具有以下涵义:

经由一定的算法机器生成

为了保证UUID的唯一性,规范定义了包括网卡MAC地址、时间戳、名字空间(Namespace)、随机或伪随机数、时序等元素,以及从这些元素生成UUID的算法。UUID的复杂特性在保证了其唯一性的同时,意味着只能由计算机生成。

非人工指定,非人工识别

UUID是不能人工指定的,除非你冒着UUID重复的风险。UUID的复杂性决定了“一般人“不能直接从一个UUID知道哪个对象和它关联。

在特定的范围内重复的可能性极小

UUID的生成规范定义的算法主要目的就是要保证其唯一性。但这个唯一性是有限的,只在特定的范围内才能得到保证,这和UUID的类型有关(参见UUID的版本)。

UUID是16字节128位长的数字,通常以36字节的字符串表示,示例如下:

3F2504E0-4F89-11D3-9A0C-0305E82C3301

其中的字母是16进制表示,大小写无关。

GUID(Globally Unique Identifier)是UUID的别名;但在实际应用中,GUID通常是指微软实现的UUID。

UUID的版本

UUID具有多个版本,每个版本的算法不同,应用范围也不同。

首先是一个特例--Nil UUID--通常我们不会用到它,它是由全为0的数字组成,如下:

00000000-0000-0000-0000-000000000000

Java源码:

packagetools.uuid;importjava.util.UUID;public classMyUUID {public staticString getUUID() {

UUID uuid=UUID.randomUUID();

String str=uuid.toString();

System.out.println(“原始UUID: ” +str);//去掉”-“符号

String temp = str.substring(0, 8) + str.substring(9, 13) + str.substring(14, 18) + str.substring(19, 23) + str.substring(24);

System.out.println(“去掉\”-\”符号: ” +temp);returntemp;

}//获得指定数量的UUID

public static String[] getUUID(intnumber) {if (number < 1) {return null;

}

String[] uuids= newString[number];for (int i = 0; i < number; i++) {

uuids[i]=getUUID();

}returnuuids;

}public static voidmain(String[] args) {

System.out.println(“—- 获取单个UUID —-“);

String uuid=getUUID();

System.out.println(“—- 获取多个UUID —-“);

String[] uuids= getUUID(5);for (int i = 0; i < uuids.length; i++) {

System.out.println(“uuids[” + i + “]=====” +uuids[i]);

}

}

}

运行结果:

—- 获取单个UUID —-原始UUID: f4958b2a-bdc8-4ea5-bed8-1246381c116a

去掉”-“符号: f4958b2abdc84ea5bed81246381c116a—- 获取多个UUID —-原始UUID: f1791418-6eb5-4538-bd2b-9f6547d8a967

去掉”-“符号: f17914186eb54538bd2b9f6547d8a967

原始UUID: e3b6451e-6073-4c11-9f35-b24b49b8fdab

去掉”-“符号: e3b6451e60734c119f35b24b49b8fdab

原始UUID: 9d53efac-d85e-486c-8bef-3009bb0654b0

去掉”-“符号: 9d53efacd85e486c8bef3009bb0654b0

原始UUID: 3c911454-034e-4b17-8daa-dd616b502744

去掉”-“符号: 3c911454034e4b178daadd616b502744

原始UUID: 9a634db6-b68b-4fa5-8389-b3ee35fc5992

去掉”-“符号: 9a634db6b68b4fa58389b3ee35fc5992

uuids[0]=====f17914186eb54538bd2b9f6547d8a967

uuids[1]=====e3b6451e60734c119f35b24b49b8fdab

uuids[2]=====9d53efacd85e486c8bef3009bb0654b0

uuids[3]=====3c911454034e4b178daadd616b502744

uuids[4]=====9a634db6b68b4fa58389b3ee35fc5992

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190496.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vr全景照片app(vr图片场景)

    【Android开发VR实战】一.给用户呈现一个360°全景图片VR即VirtualReality虚拟现实。虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统它利用计算机生成一种模拟环境是一种多源信息融合的交互式的三维动态视景和实体行为的系统仿真使用户沉浸到该环境中。那么,如何在Android中去开发VR功能的APP呢?我们利用谷歌提供的开源SDK去实现一个360°全景图片的功

    2022年4月15日
    61
  • postman汉化版下载_postcrossing中文版

    postman汉化版下载_postcrossing中文版postman汉化版下载之后直接解压使用或者替换对应版本下的resources/app.asar重要提醒:不要更新下载地址:链接:https://share.weiyun.com/0TFvHgOq密码:<atitle=”o35jeq”>&nbsp;&nbsp;</a>…

    2022年9月27日
    0
  • smarty怎么用_item怎么用

    smarty怎么用_item怎么用1、简介含义:Smarty是PHP的一个引擎模板,可以更好的进行逻辑与显示的分离,即我们常说的MVC,这个引擎的作用就是将C分离出来。环境需求:PHP5.2或者更高版本我使用的环境是:PHP5.

    2022年8月5日
    3
  • python源码之家_python画图代码大全

    python源码之家_python画图代码大全广告关闭2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品。未来,我们一起乘风破浪,创造无限可能。例如:想了解python做数据可视化的工作。我们可以从互联网找一些python做数据可视化的代码进行阅读,调试和迁移。这样做的好处,突出实用性。同时,我们在结合联想的学习方法,对所用到的可视化函数,做个更深入地了解和使用。我借用《数据科学和人工智能》这个公众号,分享一…

    2022年8月23日
    11
  • java之接口[通俗易懂]

    java之接口[通俗易懂]java之接口1、接口的概念2、接口的属性3、接口与抽象类4、静态和私有方法5、默认方法6、解决默认方法冲突7、接口与回调1、接口的概念在java中,接口不是类,而是对符合这个接口的类的一组需求接口用interface声明声明一个Comparable接口可以将接口看成一个没有实例字段的抽象类publicinterfaceComparable{ 声明一个方法,方法的实现由实现这个接口的类来实现方法 接口绝不会有示例字段,在java8以前,在接口中绝对不会实现 方法。 priv

    2022年7月7日
    22
  • MySQL 对于千万级的大表要怎么优化?

    MySQL 对于千万级的大表要怎么优化?

    2021年10月15日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号