我必须生成一个11位数的ID号,但是当我使用随机包装时,它说它超出了范围,那么如何使它变成11个呢?
public static int generateID(){
Random r = new Random();
int numbers = 1000000000 + (int)(r.nextDouble() * 999999999);
return numbers;
}
最佳答案
import java.util.concurrent.ThreadLocalRandom;
...
public long generateId() {
ThreadLocalRandom random = ThreadLocalRandom.current();
return random.nextLong(10_000_000_000L, 100_000_000_000L);
}
使用正确的工具。在这种情况下,
Random
的价值比ThreadLocalRandom
的价值低得多。