Cześć,
mam zadanko jak poniżej:
W pliku Main01.java umieść metodę o sygnaturze:
public static int[] returnUnique(int[] arr).
Uzupełnij ciało metody w taki sposób by z tablicy arr wybrała tylko unikalne wartości, które następnie mają być zwrócone z metody.
Przykład: dla tablicy [1,1,2,3,3,4], powinniśmy otrzymać [1,2,3,4].
import java.util.Arrays;
public class Main01 {
public static void main(String[] args) {
int[]arr = {1, 2, 1, 3, 3, 4, 12, 19, 3, 7, 1};
int[]result = returnUnique(arr);
System.out.println(Arrays.toString(result));
}
public static int[] returnUnique(int[]arr) {
for(int i=1; i<arr.length-1; i++){
if(arr[i-1]!=arr[i]){
if(arr[i-1]==arr[i+1]) return new int[]{arr[i]};
else return new int[]{arr[i - 1]};
}
}
return new int[]{arr[arr.length - 1]};
}
}
Wychodzi mi z tego wynik 2, a powinno być [1, 2, 3, 4, 12, 19, 7].
Czy tę część dotyczącą metody returnUnique można uprościć?