Java产生随机数字、随机字母、随机数字+字母

本文详细介绍了如何使用Java实现随机生成指定长度的数字、区间数字、字符串以及数字+字母组合的方法,提供了多种应用场景及代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.demo.common;


import java.util.Random;

/**
* @version:
* @function: 产生随机数字、随机字母、随机数字+字母。
*/
public class RandomUtil {

/**
* 随机产生几位数字:例:maxLength=3,则结果可能是 012
*/
public static final int produceNumber(int maxLength){
Random random = new Random();
return random.nextInt(maxLength);
}


/**
* 随机产生区间数字:例:minNumber=1,maxNumber=2,则结果可能是 1、2,包括首尾。
*/
public static int produceRegionNumber(int minNumber,int maxNumber){
return minNumber + produceNumber(maxNumber);
}

/**
* 随机产生几位字符串:例:maxLength=3,则结果可能是 aAz
* @param maxLength 传入数必须是正数。
*/
public static String produceString(int maxLength){
String source = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
return doProduce(maxLength, source);
}

/**
* 随机产生随机数字+字母:例:maxLength=3,则结果可能是 1Az
* @param maxLength 传入数必须是正数。
*/
public static String produceStringAndNumber(int maxLength){
String source = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
return doProduce(maxLength, source);
}

/**
* 自定义随机产生结果
*/
public static String produceResultByCustom(String customString,int maxLength){
return doProduce(maxLength, customString);
}

/**
* 生产结果
*/
private static String doProduce(int maxLength, String source) {
StringBuffer sb = new StringBuffer(100);
for (int i = 0; i < maxLength; i++) {
final int number = produceNumber(source.length());
sb.append(source.charAt(number));
}
return sb.toString();
}



public static void main(String[] args) {
System.out.println(RandomUtil.produceNumber(3));
System.out.println(RandomUtil.produceRegionNumber(1,2));
System.out.println(RandomUtil.produceString(3));
System.out.println(RandomUtil.produceStringAndNumber(3));
System.out.println(RandomUtil.produceResultByCustom("demo.", 8));

}
}
原文地址:http://bbs.it-home.org/thread-1049-1-1.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值