Compare elements in an array for duplicates

后端 未结 8 730
轻奢々
轻奢々 2020-12-21 00:34

I am trying to generate a 5 digit int array in Java and am having trouble on where to start. None of the numbers in the array can be duplicates. I can generate

相关标签:
8条回答
  • 2020-12-21 01:06

    try this:

    int[] digits = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    Random random = new Random();
    
    int[] generateId() {
        int[] clone = digits.clone();
        int[] id = new int[5];
    
        for (int i = 0; i < 5; i++) {
            int candidate;
    
            do {
                candidate = random.nextInt(10);
            } while (clone[candidate] == -1);
    
            id[i] = clone[candidate];
            clone[candidate] = -1;
        }
    
        return id;
    }
    
    0 讨论(0)
  • 2020-12-21 01:13

    First off i want to thank all of you for helping out i really appreciate it.

    I got this program to work the way i want but it seems like there should be an easier way though. Here is what i did. Any more comments would be awesome.

    do
        {
            for (int i = 0; i < 5; i++) 
            {
                iNumber = generator.nextInt(9) + 1;
                numbers[i] = iNumber;
            }
        }
        while(numbers[0] == numbers[1] || numbers[0] == numbers[2] || numbers[0] == numbers[3] || numbers[0] == numbers[4] || numbers[1] == numbers[2] || numbers[1] == numbers[3] || numbers[1] == numbers[4] || numbers[2] == numbers[3] || numbers[2] == numbers[4] || numbers[3] == numbers[4]);
    
    0 讨论(0)
提交回复
热议问题