제가난수가 고유하고 중복되지 않도록하는 방법은 무엇입니까?
난수SecureRandom random = new SecureRandom();
...
public int getRandomNumber(int maxValue) {
return random.nextInt(maxValue);
}
상기 (하지 루프)의 약 10 배라고하는 방법을 생성하는 간단한 코드를 갖는다. 모든 숫자가 고유하다는 것을 확인하고 싶습니다 (maxValue > 1000
으로 가정).
전화 할 때마다 고유 한 번호를 얻을 수 있습니까? 그렇지 않다면 어떻게 해결할 수 있습니까?
편집 : 나는 그것을 모호하게 말할지도 모른다. 고유 번호가있는 경우 수동 검사를 피하고 더 나은 솔루션이 있는지 궁금합니다.
무작위! = 고유. 사실, 꽤 정반대입니다. –
이전에 사용했던 번호를 확인한 후 해제하거나 임의 번호가 아닌 임의의 * 임의 번호를 사용하십시오. 당신이 단지 10 개의 숫자를 얻는다면 후자는 과잉이다. 위의 두 번째 문제, 즉 무작위성과 독창성이 있기 때문에 나는 Oli의 두 번째 반응에 대해 답합니다. –
고유 한 대 임의의 용어를 지우는 질문을 편집했습니다. – skaffman