java生成四位不重复的验证码
时间: 2023-08-05 13:03:08 浏览: 75
你可以使用以下代码来生成一个四位不重复的验证码:
```java
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class VerificationCodeGenerator {
public static void main(String[] args) {
String verificationCode = generateVerificationCode();
System.out.println("验证码: " + verificationCode);
}
public static String generateVerificationCode() {
List<Integer> digits = new ArrayList<>();
for (int i = 0; i < 10; i++) {
digits.add(i);
}
Collections.shuffle(digits);
StringBuilder code = new StringBuilder();
Random random = new Random();
for (int i = 0; i < 4; i++) {
int index = random.nextInt(digits.size());
int digit = digits.get(index);
code.append(digit);
digits.remove(index);
}
return code.toString();
}
}
```
这段代码首先创建了一个包含 0 到 9 的数字列表 `digits`,然后使用 `Collections.shuffle()` 方法将列表随机排序。接下来,通过使用 `Random` 类生成随机数,并从 `digits` 列表中取出对应位置的数字,将其添加到验证码字符串 `code` 中,并移除已使用的数字。
最后,返回生成的四位验证码字符串。运行以上代码,你将得到一个四位不重复的验证码作为输出。