あるメソッドからメインに配列を戻すことについて質問があります。それは私をひどく苛立たせ始めており、私はこれに頭を悩ませることはできません。メソッドで配列を変更したとしても、メインで配列を表示すると、古い配列が表示されているように見えます。配列内の重複する番号を削除しようとしていますが、デバッガーでステップスルーしたので機能することがわかりましたが、元に戻してメインに戻った後、配列全体が再び表示されます。私がここで見逃しているのは簡単なことだと思います。誰かが私を正しい方向に向けてくれませんか?これが私のコードです...
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int[] numbers = new int[10];
System.out.print("Enter 10 numbers: ");
for (int x = 0; x < numbers.length; ++x)
numbers[x] = input.nextInt();
eliminateDuplicates(numbers);
for (int y = 0; y < numbers.length; ++y)
System.out.print(numbers[y] + " ");
}
public static int[] eliminateDuplicates(int[] numbers) {
int[] temp = new int[numbers.length];
int size = 0;
boolean found = false;
for (int x = 0; x < numbers.length; ++x) {
for (int y = 0; y < temp.length && !found; ++y) {
if (numbers[x] == temp[y])
found = true;
}
if (!found) {
temp[size] = numbers[x];
size++;
}
found = false;
}
int[] result = new int[size];
for (int z = 0; z < result.length; ++z)
result[z] = temp[z];
return result;
}
}