Найти и заменить дубликаты значений в массиве

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