获取各种随机数的代码工具类
来源:互联网 发布:怎样制作淘宝店招 编辑:程序博客网 时间:2024/05/22 14:54
package com.lyt.base.util;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
public class RandomUtil {
/**
* 生成一个n位的随机数字符串
*
* @param n
* @return
*/
public static String getRandomNum(int length) {
String str = "0123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; ++i) {
int number = random.nextInt(9);// [1,9)
sb.append(str.charAt(number+1));
}
return sb.toString();
}
/**
* 生成一个n位的随机字符串
*
* @param length
* @return
*/
public static String getRandomString(int length) {
String str = "abcdefghijklmnopqrstuvwxyz0123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; ++i) {
int number = random.nextInt(36);// [0,36)
sb.append(str.charAt(number));
}
return sb.toString();
}
/**
* 获取当前时间,年月日时
*
* @return
*/
public static String getDate() {
String str = "";
DateFormat df = new SimpleDateFormat("yyyyMMddHH");
Date date = new Date();
str = df.format(date);
return str;
}
/**
* 生成用户id,10位,纯数字
*
* @return
*/
public static String userId() {
String userId = "";
userId = getRandomNum(10);
return userId;
}
/**
* 生成订单号,13位,纯数字
*
* @return
*/
public static String orderId() {
String orderId = "";
String date = getDate();
String rand = getRandomNum(13);
orderId = date + rand;
return orderId;
}
/**
* 生成商品id,10位,纯数字
*
* @return
*/
public static String proId() {
String userId = "";
userId = getRandomNum(10);
return userId;
}
/**
* 随机取list数据
* @param list
* @param n 取几条
* @return
*/
@SuppressWarnings({ "rawtypes", "unused", "unchecked" })
public static List getRandomList(List list, int n) {
Map map = new HashMap();
List listNew = new ArrayList();
if(list.size()<=n){
return list;
}else{
while(map.size()<n){
int random = (int) (Math.random() * list.size());
if (!map.containsKey(random)) {
map.put(random, "");
listNew.add(list.get(random));
}
}
return listNew;
}
}
/**
* 取数组随机数
* @param arr
* @param n
* @return
*/
@SuppressWarnings({ "unused", "unchecked" })
public static Long[] createRandomArray(Long[] arr, int n) {
// TODO Auto-generated method stub
@SuppressWarnings("rawtypes")
Map map = new HashMap();
Long[] arrNew = new Long[n];
if(arr.length<=n){
return arr;
}else{
int count = 0;//新数组下标计数
while(map.size()<n){
int random = (int) (Math.random() * arr.length);
if (!map.containsKey(random)) {
map.put(random, "");
arrNew[count++] = arr[random];
}
}
return arrNew;
}
}
}
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
public class RandomUtil {
/**
* 生成一个n位的随机数字符串
*
* @param n
* @return
*/
public static String getRandomNum(int length) {
String str = "0123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; ++i) {
int number = random.nextInt(9);// [1,9)
sb.append(str.charAt(number+1));
}
return sb.toString();
}
/**
* 生成一个n位的随机字符串
*
* @param length
* @return
*/
public static String getRandomString(int length) {
String str = "abcdefghijklmnopqrstuvwxyz0123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; ++i) {
int number = random.nextInt(36);// [0,36)
sb.append(str.charAt(number));
}
return sb.toString();
}
/**
* 获取当前时间,年月日时
*
* @return
*/
public static String getDate() {
String str = "";
DateFormat df = new SimpleDateFormat("yyyyMMddHH");
Date date = new Date();
str = df.format(date);
return str;
}
/**
* 生成用户id,10位,纯数字
*
* @return
*/
public static String userId() {
String userId = "";
userId = getRandomNum(10);
return userId;
}
/**
* 生成订单号,13位,纯数字
*
* @return
*/
public static String orderId() {
String orderId = "";
String date = getDate();
String rand = getRandomNum(13);
orderId = date + rand;
return orderId;
}
/**
* 生成商品id,10位,纯数字
*
* @return
*/
public static String proId() {
String userId = "";
userId = getRandomNum(10);
return userId;
}
/**
* 随机取list数据
* @param list
* @param n 取几条
* @return
*/
@SuppressWarnings({ "rawtypes", "unused", "unchecked" })
public static List getRandomList(List list, int n) {
Map map = new HashMap();
List listNew = new ArrayList();
if(list.size()<=n){
return list;
}else{
while(map.size()<n){
int random = (int) (Math.random() * list.size());
if (!map.containsKey(random)) {
map.put(random, "");
listNew.add(list.get(random));
}
}
return listNew;
}
}
/**
* 取数组随机数
* @param arr
* @param n
* @return
*/
@SuppressWarnings({ "unused", "unchecked" })
public static Long[] createRandomArray(Long[] arr, int n) {
// TODO Auto-generated method stub
@SuppressWarnings("rawtypes")
Map map = new HashMap();
Long[] arrNew = new Long[n];
if(arr.length<=n){
return arr;
}else{
int count = 0;//新数组下标计数
while(map.size()<n){
int random = (int) (Math.random() * arr.length);
if (!map.containsKey(random)) {
map.put(random, "");
arrNew[count++] = arr[random];
}
}
return arrNew;
}
}
}
0 0
- 获取各种随机数的代码工具类
- [代码模板]随机数的获取
- 一个获取各种时间的工具类
- Java获取随机数(工具类)
- android开发软件工具类,获取软件的各种属性
- Java生成随机数工具类,进制之间的转换工具类,获取指定时间,时间格式转换工具类
- Java生成随机数工具类,进制之间的转换工具类,获取指定时间,时间格式转换工具类
- 各种开发工具的格式化代码
- Android工具类,获取各种参数
- java获取各种时间 工具类
- 高质量的C代码.关于获取随机数
- RandomUtils 产生随机数的工具类
- [zz]各种随机数的产生
- 关于随机数的获取
- 随机数的获取
- 随机数的获取
- 获取范围内的随机数
- Java反射类工具获取成员的所有方法代码
- C# 使用Semaphore(信号量)控制多线程
- Find a way
- c++标准库中各种容器的介绍
- wait使用
- 数据库类别
- 获取各种随机数的代码工具类
- 浅谈文件上传的几种技术
- linux端口详解大全
- Mysql 更新字段类型异常处理:ERROR 1265 (01000): Data truncated for column 'xxx' at row 1
- mysql学习之主从复制
- Rxjava操作符
- Spring4.3.x 浅析xml配置的解析过程(4)——解析bean标签及其所有子标签
- 改变myeclipse中Java项目的名称,在浏览器中使用新名称访问项目时报404的问题的解决方法!!!
- ideaUI找不到maven依赖包的解决