java - 如何在java中生成从0000到9999的4位随机数

标签 java

我尝试了以下方法

int number = ThreadLocalRandom.current().nextInt(1000, 9999 + 1);

但它不会生成 4 位数字,如 0004,0035 等...

我搜索了类似的问题,但没有解决,它们与我需要的不同,如果已经存在问题,请告诉我。

我不需要生成像 1485 和 0180 这样的数字,而不仅仅是以 0 开头的数字。

最佳答案

这应该有效:

    Random r = new Random();
    String randomNumber = String.format("%04d", r.nextInt(1001));
    System.out.println(randomNumber);

编辑1

    Random r = new Random();
    String randomNumber = String.format("%04d", Integer.valueOf(r.nextInt(1001)));
    System.out.println(randomNumber);

编辑2

    Random r = new Random();
    String randomNumber = String.format("%04d", (Object) Integer.valueOf(r.nextInt(1001)));
    System.out.println(randomNumber);

所有三个版本都应该可以工作。

关于java - 如何在java中生成从0000到9999的4位随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48210530/

相关文章:

java - MySQLNonTransientConnectionException : Too many connections

java - 我想使用 NetBeans IDE 6.9.1 清除 Java 中的输出屏幕

java - Android 使用 PlaceAutoCompleteActivity (Google Places API)

java - 从SQLite数据库删除项目时出错

java - JTextPane 不显示 JScrollPane 并且不换行文本

java - 方法不能应用于给定类型

JavaFX TextArea - 调整大小时不需要的滚动条

java - 改造响应和适当的 POJO(普通旧 Java 对象)

java - 如何将hibernate注解应用到抽象类的子类上

java - 如何评论 (javadoc) NamedQueries