Повторение - HashSet
Часть раздела Логика и управление потоком путешествия по Java на Coddy. Урок 28 из 59.
Задание
ЛегкоСоздайте метод с именем processHashSet, который принимает три аргумента:
HashSet<Object>(set)Object(input) для обработкиString(operation), задающий выполняемую операцию
Используя операторы if/else и уже изученные методы HashSet, метод должен возвращать String в зависимости от значения operation:
"add": добавьтеinputв множество. Верните"Added successfully", если элемент был добавлен, или"Element already exists", если он уже находился в множестве."remove": удалитеinputиз множества. Верните"Removed successfully", если элемент был удалён, или"Element not found", если его не было в множестве."find": верните"Found at index: [index]", если множество содержитinput(где[index]— позиция элемента в порядке итерации), в противном случае верните"Element not found"."count": верните"Number of elements: [count]", где[count]— количество элементов в множестве (используйтеsize()).
Сначала Validate входные данные:
- Если
setравенnull: верните"Invalid set". - Если
operationравенnullили не является одной из четырёх перечисленных операций: верните"Invalid operation". - Для операции
"find", еслиinputравенnull: верните"Cannot find null".
Попробуйте сами
import java.util.HashSet;
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static String processHashSet(HashSet<Object> set, Object input, String operation) {
// Напишите ваш код здесь
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Прочитать начальное множество
String[] items = scanner.nextLine().split(",");
HashSet<Object> set = new HashSet<>();
if (!items[0].equals("empty")) {
for (String item : items) {
// Попробовать сначала распарсить как целое число
try {
set.add(Integer.parseInt(item));
} catch (NumberFormatException e) {
set.add(item);
}
}
}
// Прочитать ввод
String inputStr = scanner.nextLine();
Object input;
try {
input = Integer.parseInt(inputStr);
} catch (NumberFormatException e) {
input = inputStr;
}
// Прочитать операцию
String operation = scanner.nextLine();
System.out.println(processHashSet(set, input, operation));
}
}Все уроки раздела Логика и управление потоком
1Многомерные массивы
Основы 2D-массивовДоступ к элементам 2D-массиваВложенные циклы с 2D-массивамиПовторение - 2D-массивыСложение и вычитание матрицРваные массивы3D-массивы и вышеРаспространённые паттерны 2D-массивовПовторение - всё о массивах4HashSet Часть 1
Что такое HashSet?Добавление элементаУдаление элементаПроверка наличия элементаПустота и размерОчистка и клонированиеПовторение - HashSet2HashMap Часть 1
Что такое HashMap?Объявление HashMapДоступ к значениямПроверка существования ключаИзменение словарейИтоги - HashMap3HashMap. Часть 2
Методы HashMapИтерация с keySet()Итерация с entrySet()Вложенный HashMapПовторение - Управление складомПовторение - Операции HashMap6Продвинутое управление потоком
Операторы метокВыражение switchСопоставление шаблоновОхранные клаузыИтоги - управление потоком9Проект - Счетчик уникальных слов
Ввод и хранение текстаОбработка словПотренируйтесь самостоятельно: Онлайн-компилятор Java