Чтобы получить уникальные элементы из массива в Java, вы можете использовать несколько методов. Вот несколько подходов:
- Использование набора. Вы можете преобразовать массив в набор, который автоматически устраняет повторяющиеся элементы благодаря своему свойству уникальности. Вот пример:
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class Main {
public static void main(String[] args) {
Integer[] array = {1, 2, 3, 3, 4, 5, 5};
Set<Integer> uniqueSet = new HashSet<>(Arrays.asList(array));
Integer[] uniqueArray = uniqueSet.toArray(new Integer[0]);
System.out.println(Arrays.toString(uniqueArray));
}
}
- Использование списка и потока. Вы можете преобразовать массив в список, а затем использовать метод Different() из Stream API для получения уникальных элементов. Вот пример:
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
Integer[] array = {1, 2, 3, 3, 4, 5, 5};
List<Integer> list = Arrays.asList(array);
List<Integer> uniqueList = list.stream().distinct().collect(Collectors.toList());
Integer[] uniqueArray = uniqueList.toArray(new Integer[0]);
System.out.println(Arrays.toString(uniqueArray));
}
}
- Использование LinkedHashSet: вы можете использовать LinkedHashSet, который сохраняет порядок элементов, устраняя дубликаты. Вот пример:
import java.util.Arrays;
import java.util.LinkedHashSet;
public class Main {
public static void main(String[] args) {
Integer[] array = {1, 2, 3, 3, 4, 5, 5};
LinkedHashSet<Integer> uniqueSet = new LinkedHashSet<>(Arrays.asList(array));
Integer[] uniqueArray = uniqueSet.toArray(new Integer[0]);
System.out.println(Arrays.toString(uniqueArray));
}
}