java 随机数

package com.weqia.common.util;


import java.util.Calendar;
import java.util.Date;
import java.util.Random;


/**
 * 
 * 随机数工具类
 *
 */
public class RandomUtil {


/**
* 生成-6位随机数
* @return
*/
public static String genSixRandomNum() {
Random rd = new Random();
StringBuffer buf = new StringBuffer();
for(int i = 1; i <= 6; i ++){
buf.append(rd.nextInt(10));
}

return buf.toString();
}

/**
 * 生成-长随机数,时间+随机数
 */
public static String genTimeRandomNum() {
  Random rd = new Random();
  int rdNum = rd.nextInt(9999999);
  return Long.toString(System.currentTimeMillis()) + rdNum;
}

/**

* @Description 生成随机数
* @param length
* @return  
*
*/
public static String getRandomString(int length) { //length表示生成字符串的长度   
String base = "abcdefghijklmnopqrstuvwxyz0123456789";     
Random random = new Random();     
StringBuffer sb = new StringBuffer();     
for (int i = 0; i < length; i++) {     
int number = random.nextInt(base.length());     
sb.append(base.charAt(number));     
}     
return sb.toString();     
}   

/**

* @Description 生成都是数字的随机数
* @param length
* @return  
*
*/
public static String getRandomInt(int length) { //length表示生成字符串的长度   
String base = "0123456789";     
Random random = new Random();     
StringBuffer sb = new StringBuffer();     
for (int i = 0; i < length; i++) {     
int number = random.nextInt(base.length());     
sb.append(base.charAt(number));     
}     
return sb.toString();     
}  

/**

* @Description  test  有问题,乱码
* @return  
*
*/
public static String getChinese(){
Random random=new Random();
String ctmp="";
String rbase[]={"0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"};
//生成第一位区码
int r1=random.nextInt(3)+11;//生成11-14随机数
String str_r1=rbase[r1];
//生成第二位区码
int r2;
if(r1==13){
r2=random.nextInt(10);
}
else{
r2=random.nextInt(16);
}
String str_r2=rbase[r2];
//生成第一位位码
int r3=random.nextInt(6)+10;
String str_r3=rbase[r3];
//生成第二位位码
int r4;
if(r3==10){
r4=random.nextInt(14)+2;
}else{
r4=random.nextInt(16);
}
String str_r4=rbase[r4];
//将生成的区码放入第一个元素,位码放入第二个元素
byte a[]=new byte[2];
a[0]=(byte)Integer.parseInt(str_r1+str_r2,16);//转换成16进制
a[1]=(byte)Integer.parseInt(str_r3+str_r4,16);
ctmp=new String(a);//根据字节生成汉字
return ctmp;
}

/**

* @Description 生成汉字
* @param length
* @return  
*
*/
public static String getHanzi(int length) { //length表示生成字符串的长度  赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨 
String xing[] = {
"王","李","张","金","丁","赵","钱","孙","周","吴","郑","冯","陈","褚","卫","蒋","沈","韩","杨","朱","费","廉","岑","薛","雷","贺","倪","汤","滕","殷",
"秦","尤","许","何","吕","施","张","孔","曹","严","华","金","魏","陶","姜","郎","鲁","韦","昌","马","苗","凤","花","方","俞","罗","毕","郝","邬","安",
"戚","谢","邹","喻","柏","水","窦","章","云","苏","潘","葛","奚","范","彭","任","袁","柳","酆","鲍","史","唐","常","乐","于","时","傅","皮","卞","齐",
"康","伍","余","元","卜","顾","孟","平","黄","和","程","嵇","邢","滑","裴","陆","荣","翁","荀","羊","於","惠","甄","麹","家","封","芮","羿","储","靳",
"汲","邴","糜","松","井","段","富","巫","乌","焦","巴","弓","牧","隗","山","谷","车","侯","宓","蓬","全","郗","班","仰","秋","仲","伊","宫","向","古"
};

String base = "甜蜜恬谧俊杰俏平华国智强超海彬淘冉悦丹鸿慧敏Q鑫龙小旭辉庆H晴津优雅美丽魅K宝贝安丽中米智伟通达小晶益华盛海尔创业睿仕威有高飞超骏峰乐兴旺吉利A百恒易桩桩信盟明道梦博凯潮顺G强阿迪咨达斯华爱尚品味劲丰健格鼎复新锐美优享依瑞德环摩卡秀银基萱百圣平安";     
Random random = new Random();     
StringBuffer sb = new StringBuffer();     
for (int i = 0; i < length; i++) {     
int number = random.nextInt(base.length());     
sb.append(base.charAt(number));     
}     

Random rd = new Random();
return xing[rd.nextInt(150)] + sb.toString();  
}


public static String getGongsi(int length) { //length表示生成字符串的长度   
String gs[] = {"网络科技","实验室","销售部","分公司","传媒","项目部","服饰连锁","俱乐部","卖场","集团","贸易","分部","一部","通讯","机构","工会","技术服务有限公司","学院","开发室","信息科",
"市场部","有限公司","股份有限公司","汽车4S","物资有限公司","工作室","售后服务","论坛","设备制造有限公司","项目组","在线","营销中心","商务","会所","食品公司",
"测试","中介","移动","科技有限公司","事务所","文化传播有限公司","大区","商贸有限公司","事业部","学生会","经贸","投资管理","机械厂","仪器技术","技协"};
//String gs[] = {"科技","网络","公司","咨询","集团","贸易","工程","地产","通讯","机构"};

String base = "一民三泰中米智伟六通九达小益华盛亿海尔创业睿仕云威有高飞超骏峰乐牛祥易毅兴旺吉利百恒易桩桩信盟明道梦博凯潮顺钛氪强阿迪咨达斯华爱尚品味劲丰健格鼎复新锐美优享依瑞德环摩卡秀银基萱百圣平安";
//String base = "中米智伟通达小海尔创业淘宝百度恒生易桩桩信盟明道顺A强生阿迪达斯华";
Random random = new Random();     
StringBuffer sb = new StringBuffer();     
for (int i = 0; i < length; i++) {     
int number = random.nextInt(base.length());     
sb.append(base.charAt(number));     
}     

Random rd = new Random();
return sb.toString()+ gs[rd.nextInt(50)];  
}

/**

* @Description 随机生成一个日期,测试用
* @return  
*
*/
public static Date getRandomDate(){


Random   rand   =   new   Random(); 
//SimpleDateFormat   format   =   new   SimpleDateFormat( "yyyy-MM-dd "); 
Calendar   cal   =   Calendar.getInstance(); 
cal.set(2013,   6,   1); 
long   start   =   cal.getTimeInMillis(); 
cal.set(2014,   5,   27); 
long   end   =   cal.getTimeInMillis(); 

//for(int   i   =   0;   i   <   10;   i++)   { 
Date   d   =   new   Date(start   +   (long)(rand.nextDouble()   *   (end   -   start)));
// System.out.println(format.format(d)); 
//} 

return d;
}

/**

* @Description  测试用 - 公司
* @return  
*
*/
public static Date getGongsiRandomDate(){


Random   rand   =   new   Random(); 
//SimpleDateFormat   format   =   new   SimpleDateFormat( "yyyy-MM-dd "); 
Calendar   cal   =   Calendar.getInstance(); 
cal.set(2013,   6,   1); 
long   start   =   cal.getTimeInMillis(); 
cal.set(2014,   5,   27); 
long   end   =   cal.getTimeInMillis(); 

//for(int   i   =   0;   i   <   10;   i++)   { 
Date   d   =   new   Date(start   +   (long)(rand.nextDouble()   *   (end   -   start)));
// System.out.println(format.format(d)); 
//} 

return d;
}

public static void main(String arg[]){

getRandomDate();

//
String tmp = getGongsiRandomDate().toGMTString(); //getGongsi(2);//getRandomName(8); //genTimeRandomNum();


System.out.println(tmp);

//test
System.out.println(getGongsi(2));



}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值