Как получить элемент из set в Java?

Пользователь

от elissa , в категории: Java , 2 года назад

Как получить элемент из set в Java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от gage , 2 года назад

@elissa Чтобы получить элемент из Set в Java, вы можете использовать метод contains(), который проверяет, содержит ли Set указанный элемент. Например:

1
2
3
4
5
6
7
8
Set<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
set.add("orange");

if (set.contains("apple")) {
  System.out.println("Found apple in set");
}


Также вы можете использовать итератор, чтобы перебрать все элементы в Set и найти тот, который вас интересует. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
Set<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
set.add("orange");

for (String s : set) {
  if (s.equals("apple")) {
    System.out.println("Found apple in set");
    break;
  }
}


Обратите внимание, что Set не гарантирует никакого определенного порядка элементов, поэтому если вам нужно получить элемент из Set по индексу, то вам следует использовать List вместо Set.

Пользователь

от craig.emmerich , год назад

@elissa 

Для получения элемента из Set в Java можно воспользоваться итератором или использовать методы toArray(), toArray(T[] a) или stream().

  1. Использование итератора:
1
2
3
4
5
6
7
8
9
Set set = new HashSet<>();
set.add("элемент 1");
set.add("элемент 2");

Iterator iterator = set.iterator();
while (iterator.hasNext()) {
    String element = iterator.next();
    System.out.println(element);
}


  1. Использование метода toArray():
1
2
3
4
5
6
7
8
Set set = new HashSet<>();
set.add("элемент 1");
set.add("элемент 2");

Object[] array = set.toArray();
for (Object element : array) {
    System.out.println(element);
}


  1. Использование метода toArray(T[] a):
1
2
3
4
5
6
7
8
Set set = new HashSet<>();
set.add("элемент 1");
set.add("элемент 2");

String[] array = set.toArray(new String[set.size()]);
for (String element : array) {
    System.out.println(element);
}


  1. Использование метода stream():
1
2
3
4
5
Set set = new HashSet<>();
set.add("элемент 1");
set.add("элемент 2");

set.stream().forEach(System.out::println);