随机生成固定位数的数字
2007-12-16 21:29
246 查看
public class MyRandom {
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
System.out.println("" + MyRandom.getPK());
}
/**
* getPK,获得数据库使用的一个long型唯一主键 *位,同一微秒内3000个不会重复
*
* @return long
*/
private static long[] ls = new long[3000];
private static int li = 0;
public synchronized static long getPK() {
long lo = getpk();
for (int i = 0; i < 3000; i++) {
long lt = ls[i];
if (lt == lo) {
lo = getPK();
break;
}
}
ls[li] = lo;
li++;
if (li == 3000) {
li = 0;
}
return lo;
}
private static long getpk() {
String a = (String.valueOf(System.currentTimeMillis())).substring(3, 13);
String d = (String.valueOf(Math.random())).substring(2, 4);
return Long.parseLong(a + d);
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
System.out.println("" + MyRandom.getPK());
}
/**
* getPK,获得数据库使用的一个long型唯一主键 *位,同一微秒内3000个不会重复
*
* @return long
*/
private static long[] ls = new long[3000];
private static int li = 0;
public synchronized static long getPK() {
long lo = getpk();
for (int i = 0; i < 3000; i++) {
long lt = ls[i];
if (lt == lo) {
lo = getPK();
break;
}
}
ls[li] = lo;
li++;
if (li == 3000) {
li = 0;
}
return lo;
}
private static long getpk() {
String a = (String.valueOf(System.currentTimeMillis())).substring(3, 13);
String d = (String.valueOf(Math.random())).substring(2, 4);
return Long.parseLong(a + d);
}
}
相关文章推荐
- Java生成随机数字和字母组合10位数
- 中软面试(一):java写一个随机生成四位数的程序 每位数字不重复
- php随机生成指定长度的字符串 可以固定数字 字母 混合
- [Asp.net] 随机生成300个不重复的 纯数字8位数
- 随机生成字母加数字16位数方法
- 生成固定长度的随机字符和数字
- web前端js中随机生成指定位数的字母数字、组合字符串可选择字母大小写
- 生成固定长度的随机字符和数字
- 生成字符串+数字固定位数数据不重复方案设计
- 随机生成8位数(包含字母和数字)
- rand函数随机生成固定位数随机数
- 使用python随机生成指定位数的数字
- 使用java Random动态传递位数 生成指定位数的随机字符串-数字字母混合
- php生成随机字符串 指定长度 可以固定数字 字母 混合
- 为产品或者商品随机生成6位数的数字编码方案
- 随机生成8位数
- 随机生成0~9十个数字,十个数字不重复(包含升序,降序)
- Python给数字前固定位数加零
- 生成指定位数的随机字符串
- 生成随机数字和字母