`
eyes_on_you
  • 浏览: 21285 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

生成四个随机号码

 
阅读更多

一次生成四个随机号码,12位,可以字母和数字的组合,不能有规律,一年内不能重复。要考虑并发。有没有不去对比以前的,生成后就保证不重复。

 

public class RandomUuid 
{
	public static void main(String []args)
	{
		String uuid = java.util.UUID.randomUUID().toString();
		String s    = uuid.toString().replaceAll("-", "").substring(0, 12);
		System.out.println(uuid);
		System.out.println(s);
	}
}
输出:3e11650d-a030-4eb4-bda0-94be301839a4
         3e11650da030

 

 

考虑并发就把生成编号的类设计成单例模式,然后加锁便可

package littlejava;

public class RandomUuid 
{
	private static RandomUuid ruuid  = new RandomUuid();
	private RandomUuid()
	{		
	}
	
	public static RandomUuid getRandomUuidInstance()
	{
		return ruuid;
	}
	
	public synchronized String getUUID12()//如果不同步,多线程刹那间有可能获取到同一个uuid(已经试过)
	{
		return java.util.UUID.randomUUID().toString().replaceAll("-", "").substring(0, 12);
	}
	
}

public class MyTask implements Runnable{

	@Override
	public void run() {
		String temp;
		for(int i=0;i<100;i++)
		{
			RandomUuid ru= RandomUuid.getRandomUuidInstance();
			temp=ru.getUUID12();
			System.out.println(temp);
		}
	}

}

public class UuidMain {
	public static void main(String [] args)
	{
		MyTask mytask= new MyTask();
		Thread t1 = new Thread(mytask);
		Thread t2 = new Thread(mytask);
		Thread t3 = new Thread(mytask);
		Thread t4 = new Thread(mytask);
		Thread t5 = new Thread(mytask);
		t1.start();
		t2.start();
		t3.start();
		t4.start();
		t5.start();	
	}
}
输出:45d5a53d3d39
313cdca23032
a066ae1e5121
821bfa0926de
2daa8e159355
a71aac3cd10d
9087da9d940c
edc1d61eca33
53d8de5f8805
edb0e536236a
b09d2b27468c
72a0d88d9d8a
de09701f527a
3bf8bfebca07
f23957c45591

 

分享到:
评论

相关推荐

    Python一个随机生成四则运算题目的小程序

    3. `generate_math_question()`: 生成一个随机的四则运算题目,包括两个随机数和一个随机运算符。根据运算符的类型,对随机数进行了一些调整,例如确保除法结果是整数,避免减法结果为负数。 4. `generate_math_...

    0.4_data_gen_生成随机数据_自动生成csv文件_数据随机生成函数_生成数据_

    这个名为"0.4_data_gen.py"的Python脚本显然旨在帮助用户自动生成用于测试和验证模型性能的随机数据集,特别是当需要大量数据来训练或评估深度学习模型时。以下是对该脚本可能涉及的知识点的详细解释: 1. **生成...

    Guid生成器(随机生成工具)

    4. 生成两个随机或伪随机的12位16进制字符串。 5. 将这些部分按照Guid的格式组合起来,插入破折号。 6. 最后,生成的Guid可以复制到剪贴板,供用户在需要的地方使用。 在给定的压缩包文件GuidGen中,我们可以推测它...

    四参数随机生长法生成多孔介质代码_三维多孔_随机四参数_多孔介质_多孔介质模型_源码

    这种算法基于四个关键参数,能够以随机的方式生成多孔结构,广泛应用于材料科学、流体力学、地质工程等领域,以模拟实际中复杂且不规则的多孔材料。 在描述中提到的“可快速构建模型,速度极快”,这表明该代码设计...

    MyEclipse编写的班级随机数据生成器

    【MyEclipse编写的班级随机数据生成器】 这个项目是一个基于MyEclipse开发的实用工具,主要用于班级管理中的随机抽签或分组任务。MyEclipse是一款强大的Java集成开发环境,它提供了丰富的功能,包括代码编辑、调试...

    java生成的随机验证码

    例如,如果我们想要生成4位数字的验证码,可以创建一个`Random`对象,并调用`nextInt(10)`方法四次,每次都在0到9之间获取一个随机整数。为了确保验证码不重复,可以将生成的数字存储在一个数组中,并检查新生成的...

    java随机生成数字和字母

    - 将得到的随机数转换为字符类型,即可获得一个随机的英文字母。 - 最后,根据生成的字母判断其是否为元音字母,并将其添加到字符串`str`中。 ##### 3.3 主函数 ```java public static void main(String[] args) {...

    随机整数生成器

    # 生成1到10之间的3个随机整数 random_nums = random.sample(range(1, 11), 3) ``` 在Java中,可以使用`java.util.Random`类: ```java import java.util.Random; public class RandomDemo { public static void...

    随机生成汉字[vb]

    生成随机汉字的功能还可以扩展,比如结合其他信息,生成包含特定属性的汉字(如按四声调、笔画数等)。此外,还可以考虑汉字的常用程度,通过引入字频数据,使得生成的汉字更接近实际语言中的分布。 综上所述,...

    随机生成对应省份IP的PHP类.7z

    3. 随机选择:利用PHP的随机数生成函数,如`rand()`或更安全的`random_int()`,在特定省份的IP范围内生成一个随机整数。 4. 转换回IP:再使用`inet_ntoa()`函数将这个整数转换回IP地址格式。 5. 结合省份信息:...

    java生成随机密码

    - **随机性**:虽然`java.util.Random`提供了生成随机数的功能,但它的随机性并不足够高,尤其是在安全性要求较高的场景下。因此,在某些情况下,可以考虑使用更安全的随机数生成器如`SecureRandom`。 - **安全性**...

    随机用户名生成工具 V2.0(名字拼音+4位数字)

    "随机用户名生成工具 V2.0(名字拼音+4位数字)"是一款专为此目的设计的应用程序,它结合了汉字名字的拼音与四位数字,以创建独特且易于识别的用户名。 首先,我们要理解这个工具的工作原理。它基于汉语拼音,将...

    基于Python设计额一个随机生成四则运算题目的小程序源码.zip

    基于Python设计额一个随机生成四则运算题目的小程序源码.1. `generate_random_number()`: 生成一个随机整数,范围在1到100之间。2. `generate_random_operator()`: 从加减乘除四个运算符中随机选择一个。3. `...

    伪随机数的生成

    综上所述,本项目的目标是实现一个高性能的伪随机数生成器,用于生成包含特定前缀的16进制字符串。通过采用Mersenne Twister算法,我们可以在满足性能和内存限制的同时,保证生成的序列具有良好的随机特性。在具体...

    C#编写的生成随机整数,小数

    这将返回1到100之间的一个随机整数,包括1但不包括101。 3. **生成随机浮点数**: `Random.NextDouble()`方法用于生成0.0(包含)到1.0(不包含)之间的双精度浮点数。若要生成特定范围内的两位小数,可以先将其...

    jsp随机生成验证码

    总结,使用JSP生成随机验证码涉及到JSP基本语法、内置对象、字符串操作、随机数生成、图像处理以及服务器端验证等多个知识点。这个过程不仅有助于提高网站安全性,也是理解JSP和Web开发实践的重要一课。

    随机文本数据生成器,极速密码生成

    本文将详细探讨一个名为“随机文本数据生成器”的工具,它能快速生成大量的随机文本数据,且特别适用于测试数据的创建和密码的生成。这个工具的核心源码在http://hi.baidu.com/kuangzu 可供查阅,名为“RndStr ...

    PHP 随机生成姓名类

    - **`getName()`**:返回一个随机生成的中文姓名。该方法首先从 `$arrXing` 数组中随机选择一个姓氏,然后从 `$arrMing` 数组中随机选择一个或两个名字字符,组合成完整的姓名并返回。 #### 四、代码实现 下面是对...

    李军整车模型及随机路面生成、使用、仿真方法.rar

    包含了一个bin 整车模型文件, 随机路面生成导入以及使用方法,具体如下: 1.使用随机路面生成器生成随机不平顺路面,在C盘盘符下可以找到road.rdf...4.打开jeep.bin,设置好四个轮胎属性文件和路面文件 5.仿真

Global site tag (gtag.js) - Google Analytics