随机数的掌握是java基础的标识之一,本篇文章将带大家通过一些实例来深入了解java随机数机制。
例1:根据当前时间随机生成数字/**
* @Title: getDateAddFiveRandomCode
* @Description: 根据当前时间获取随机数:当前时间+5位随机数
* @return String 返回类型
* @date 2019年5月12日 上午10:32:52
* @throws
*/
public static String getDateAddFiveRandomCode()
{
int randomNum = (int)(Math.random() * 90000) + 10000;
String date = new SimpleDateFormat("yyyyMMddHHmmss")
.format(Calendar.getInstance()
.getTime());
return date + randomNum;
}
/**
* @Title: getDateAddThreeRandomCode
* @Description: 根据当前时间获取随机数:当前时间+3位随机数
* @return String 返回类型
* @date 2019年5月12日 上午10:33:14
* @throws
*/
public static String getDateAddThreeRandomCode()
{
int randomNum = (int)(Math.random() * 900) + 100;
String date = new SimpleDateFormat("yyyyMMddHHmmss")
.format(Calendar.getInstance()
.getTime());
return date + randomNum;
}
例2:自定义随机数import java.util.Random;
/**
*
* @author mengzw
* @since 3.0 2018-7-11
*/
public class RandomTest
{
/**
* 生成随机字符串
*
* @param length
* 要生成字符串的长度
* @param stringType
* 字符源的类型。0:字母+数字(已把数字中的易混淆字符去除), 1:纯字母, 2:纯数字。默认为字母+数字
* @param caseType
* 大小写的类型。0:大小写混合, 1:纯大字, 2:纯小写。默认为纯大写
* @param specialString
* 特殊字符 如果需要生成的字符串中包含特殊字符,可把需要添加的特殊字符传进来。该参数为null或""都没关系
* @return
*/
public static String getRandomString(int length, int stringType, int caseType, String specialString)
{
String type0 = "abcdefghijkmnopqrstuvwxyz23456789";
String type1 = "abcdefghijkmnopqrstuvwxyz";
String type2 = "0123456789";
String characterStore = "";
switch (stringType)
{
case 0:
characterStore = type0;
break;
case 1:
characterStore = type1;
break;
case 2:
characterStore = type2;
break;
default:
characterStore = type0;
break;
}
characterStore += specialString;
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i
{
int number = random.nextInt(characterStore.length());
char c = characterStore.charAt(number);
switch (caseType)
{
case 0:
c = random.nextBoolean() ? Character.toUpperCase(c) : Character.toLowerCase(c);
break;
case 1:
c = Character.toUpperCase(c);
break;
case 2:
c = Character.toLowerCase(c);
break;
default:
c = Character.toUpperCase(c);
break;
}
sb.append(c);
}
return sb.toString();
}
public static void main(String[] args)
{
System.out.println(getRandomString(5, 0, 0, ""));
}
}
以上就是本篇文章的所有内容,能够熟练运用随机数就代表你的java基础学习已经有一点起色了,更多java常见问题敬请关注奇Q工具网了解详情。
推荐阅读: