Finden und ersetzen Sie doppelte Werte in einem Array
int[] arr = { 123, 129, 1928, 918273645, 12345, 123, 543, 543, 123, 123 };
int size = arr.length;
Scanner in = new Scanner(System.in);
for (int i = 0; i < size; i++) {
for (int j = i; j < size; j++) {
if (i == j) {
continue;
}
if (arr[i] == arr[j]) {
System.out.println("Duplicate found of " + i + " at " + j);
System.out.print("Input replacement: ");
int replacement = in.nextInt();
boolean duplicate = true;
do {
try {
arr[j] = replacement;
for (int k = 0; k < j; k++) {
if (arr[j] == arr[k]) {
System.out.println("You just input at " + j + " the same value as " + k);
throw new Exception();
}
}
duplicate = false;
} catch (Exception e) {
System.out.println("Please enter another value: ");
replacement = in.nextInt();
}
} while (duplicate);
}
}
}
Testy Toad