java生成随机数字和字母组合(自定义长度)
2016-01-27 11:53
701 查看
import java.util.Date; import java.util.HashSet; import java.util.Random; import java.util.Set; /** * * @author lollipop-xtl * */ public class Demo { public static void main(String[] args) { Set<String> set = new HashSet<String>(); Long startTime = new Date().getTime(); while (true) { String code = getCharAndNumr(6); set.add(code); if (set.size() >= 1000) { break; } } Long endTime = new Date().getTime(); long time = (endTime - startTime); System.out.println("生成个数:" + set.size()); System.out.println("生成耗时" + time + "毫秒,约" + (time / 1000) + "秒");// for (String string : set) { System.out.println(string); } } /** * java生成随机数字和字母组合 * * @param length[生成随机数的长度] * */ public static String getCharAndNumr(int length) { String val = ""; Random random = new Random(); for (int i = 0; i < length; i++) { // 输出字母还是数字 String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num"; // 字符串 if ("char".equalsIgnoreCase(charOrNum)) { // 取得大写字母还是小写字母 int choice = random.nextInt(2) % 2 == 0 ? 65 : 97; val += (char) (choice + random.nextInt(26)); } else if ("num".equalsIgnoreCase(charOrNum)) { // 数字 val += String.valueOf(random.nextInt(10)); } } return val; } }
相关文章推荐
- Spring AOP 切面编程的方法
- 深入理解Java:SimpleDateFormat安全的时间格式化
- Java HashMap工作原理及实现
- java 单例
- Eclipse插件开发3-SWT基础
- Eclipse 在开发中使用到的快捷键很实用噢(转载)
- java synchronized详解
- RSA密钥,JAVA与.NET,IOS之间转换
- Spring学习笔记---6-Spring事务管理(2)
- 播放gif控件 GifMovieView.java
- MyEclipse中SVN的使用方法
- Java JDK各大包描述
- 使用scala,java实现使用phenix读取hbase中数据
- hadoop学习记录之javaEE环境的搭建
- ADT_Eclipse也可以运行JUNIT4测试(但不实用)
- Java截去字符串中的一段
- 设计模式之Proxy(代理):模拟JDK的动态代理
- JedisConnectionException: java.net.SocketException: Socket closed;Unknown reply: ; It seems like ser
- SpringJUnit4ClassRunner拉起来的单元测试怎么装配Container实例
- JAVA之关于this和super的用法