複製代碼代碼如下:
包裝測試;
導入java.util.concurrent.atomic.atomicinteger;
公共類iDgenerate {
私有靜態最終AtomicInteger Integer = New AtomicInteger(0);
公共靜態long getid(){
長時間= system.currentTimeMillis();
StringBuilder str = new StringBuilder(20);
str.append(time);
int intvalue = integer.getAndIncrement();
if(integer.get()> = 10000){
integer.set(0);
}
if(intvalue <10){
str.Append(“ 000”);
} else if(intvalue <100){
str.Append(“ 00”);
} else if(intvalue <1000){
str.Append(“ 0”);
}
str.Append(IntValue);
返回long.parselong(str.tostring());
}
公共靜態void main(string [] args){
for(int i = 0; i <100003; i ++){
new Test()。start();
}
}
私有靜態類測試擴展了線程{
@Override
public void run(){
system.out.println(idgenerate.getID());
}
}
}