UUID

UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的UUID。在这样的情况下,就不需考虑数据库创建时的名称重复问题。目前最广泛应用的UUID,是微软公司全局唯一标识符GUID),而其他重要的应用,则有Linux ext2/ext3文件系统、LUKS加密分区、GNOME、KDE、Mac OS X等等。

String uuid1 = UUID.randomUUID().toString();//生成UUID
Log.e(TAG, "uuid1 默认的uuid: "+uuid1);
String uuid2 = UUID.randomUUID().toString().replace("-","");//格式化UUID将“-”去掉
Log.e(TAG, "uuid2 将“-”去掉: "+uuid2);
String uuid3 = UUID.randomUUID().toString().replace("-",".");//格式UUID将“-”格式成“.”
Log.e(TAG, "uuid3 将“-”格式成“.”: "+uuid3);
String uuid4 = UUID.randomUUID().toString().concat(".apk");//格式UUID,在UUID的结尾添加.apk
Log.e(TAG, "uuid4 结尾添加.apk: "+uuid4);
String uuid5 = UUID.randomUUID().toString().replaceAll("\\d","");//替换所有,参数1为要替换的字符正则表达式,参数2为替换字符;
Log.e(TAG, "uuid5 去掉所有数字: "+uuid5); UUID newuuid = UUID.fromString(uuid1);//将String类型 转成 UUID
UUID u1 = UUID.randomUUID();
UUID u2 = UUID.randomUUID();
int values = u1.compareTo(u2); // -1=小于 0=等于 1=大于
Log.e(TAG, "u1 对比 u2: "+values);//注意UUID对比 不会根据生成时间就比较大,它只是简单的比较字符大小

结果:

 E/DemoActivity: uuid1 默认的uuid: 02f33031-dbb6-465f-9645-11388b3f08c6
E/DemoActivity: uuid2 将“-”去掉: f7b60f9a76954939afd773c158527b99
E/DemoActivity: uuid3 将“-”格式成“.”: 2c5c2843.a122.465b.bb23.963221fb32ed
E/DemoActivity: uuid4 结尾添加.apk: f466f910-0ed9-4a26-8532-bee14272136f.apk
E/DemoActivity: uuid5 去掉所有数字: fdb-ca-d-b-cfaee
E/DemoActivity: u1 对比 u2: -1

Java 学习 UUID 与 时间格式化、时间操作的更多相关文章

  1. js 时间格式化 -- 时间加减实现

    时间格式化的方法: Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.ge ...

  2. Java学习笔记【七、时间、日期、数字】

    参考:http://www.runoob.com/java/java-date-time.html Date类 构造: Date() 使用当前的日期时间 Date(long millisec) 197 ...

  3. velocity 时间显示 时间格式化 时间转化

    思想:通过前台展现层(Velocity)中的工具(tools)方法来修改. *************** 具体修改步骤: 1.在toolbox.xml配置文件中添加以下代码: <tool> ...

  4. Java学习笔记 06 数字格式化及数学运算

    一.数字格式化 DecimalFormat类 >>DecimalFormat是NumberFormat的子类,用于格式化十进制数,可以将一些数字格式化为整数.浮点数.百分数等.通过使用该类 ...

  5. Java 学习笔记 IO流与File操作

    可能你只想简单的使用,暂时不想了解太多的知识,那么请看这里,了解一下如何读文件,写文件 读文件示例代码 File file = new File("D:\\test\\t.txt" ...

  6. Java学习笔记 02 String类、StringBuilder类、字符串格式化和正则表达式

    一.String类一般字符串 声明字符串 >>String str 创建字符串 >>String(char a[])方法用于将一个字符数组创建为String对象 >> ...

  7. Java学习笔记【一、环境搭建】

    今天把java的学习重新拾起来,一方面是因为公司的项目需要用到大数据方面的东西,需要用java做语言 另一方面是原先使用的C#公司也在慢慢替换为java,为了以后路宽一些吧,技多不压身 此次的学习目标 ...

  8. Java 学习之路 -- day00

    Java 学习之路 -- day00 Typora 快捷键操作 标题:#+空格 2. *斜体* 3. **加粗** 4. **斜体加粗*** 5. ~~删除线~~ 6. > 引用 7. ···分 ...

  9. Python学习笔记 (2) :字符串输出、操作、格式化和日期、时间格式化

    一.字符串输出及运算 1.常用输出格式及方法 ')#单引号 ")#双引号 """)#三个引号 1234567890 1234567890 1234567890 ...

随机推荐

  1. java基础知识点学习

    基础学习总结 1.锁sync/lock都有哪些方法,底层实现 synchronized ['sɪŋkrənaɪzd] 2.线程池的参数.线程池执行的流程,当到达线程池到达最大数,队列也满了,出现的异常 ...

  2. python day19--面向对象,接口,封装

    #1.接口类,对象类.规范类中方法的统一. # 第一版:三个类,每个类中有相同的方法 # class Alipay: # def __init__(self,money): # self.money= ...

  3. 剑指Offer 53. 表示数值的字符串 (字符串)

    题目描述 请实现一个函数用来判断字符串是否表示数值(包括整数和小数).例如,字符串"+100","5e2","-123","3.1 ...

  4. 02_搭建Nginx服务器

    一.nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境. ①gcc 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有 ...

  5. Linux学习man page

    1.3.8需要记住,分别代表用户操作.函数库和管理指令. ##man -f command 显示出命令的所有说明文档.等同于 whatis ##man -k key 显示出带key的所有说明文档.等同 ...

  6. input[type='file']默认样式

    <input type="file" name="" id="" value="" /> 当input的ty ...

  7. 用virtualenv建立独立虚拟环境 批量导入模块信息

    pip3 install virtualenv mkdir env/env1 source bin/activate pip3 freeze >requirements.txt or pipre ...

  8. idc市场

    机房 idc服务商 ============================== 电信1.古城热线-西部数据中心于2001年正式投入运营,有经济技术开发区和高新技术产业开发区两个核心机房高新路电信广场 ...

  9. Centos7.4安装配置haproxy和Keepalived

    系统版本是centos7.4的 [root@data-1-1 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [roo ...

  10. Java面向对象 第4节 类的多态性

    一.多态的概念 在面向对象语言中,多态是指在一棵继承树中的类中可以有多个同名但不同方法体及不同形参的方法.通常有两种途径实现多态:方法的重载和覆盖. 多态性允许以统一的风格处理已存在的变量及相关的类. ...