Özet - HashSet
Coddy'nin Java Journey'sinin Mantık & Akış bölümünün bir parçası — ders 28 / 59.
Görev
KolayÜç bağımsız değişken alan processHashSet adında bir metot oluşturun:
- Bir
HashSet<Object>(set) - İşlenecek bir
Object(input) - Gerçekleştirilecek işlemi belirten bir
String(operation)
if/else ifadelerini ve daha önce öğrendiğiniz HashSet metotlarını kullanarak, metot operation değerine bağlı olarak bir String döndürmelidir:
"add":inputöğesini kümeye ekleyin. Eklendiyse"Added successfully", kümede zaten varsa"Element already exists"döndürün."remove":inputöğesini kümeden çıkarın. Çıkarıldıysa"Removed successfully", kümede yoksa"Element not found"döndürün."find": kümeinputöğesini içeriyorsa"Found at index: [index]"(burada[index], öğenin yineleme sırasındaki konumudur), aksi takdirde"Element not found"döndürün."count":"Number of integers: [count]"döndürün; burada[count], kümedeki tamsayıların (integers) sayısıdır.
Önce girdileri doğrulayın:
- Eğer
setnullise:"Invalid set"döndürün. - Eğer
operationnullise veya yukarıdaki dört işlemden biri değilse:"Invalid operation"döndürün. "find"işlemi için, eğerinputnullise:"Cannot find null"döndürün.
Kendin dene
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) {
// Kodunuzu buraya yazın
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Başlangıç kümesini oku
String[] items = scanner.nextLine().split(",");
HashSet<Object> set = new HashSet<>();
if (!items[0].equals("empty")) {
for (String item : items) {
// Önce tamsayı olarak ayrıştırmayı dene
try {
set.add(Integer.parseInt(item));
} catch (NumberFormatException e) {
set.add(item);
}
}
}
// Girdiyi oku
String inputStr = scanner.nextLine();
Object input;
try {
input = Integer.parseInt(inputStr);
} catch (NumberFormatException e) {
input = inputStr;
}
// İşlemi oku
String operation = scanner.nextLine();
System.out.println(processHashSet(set, input, operation));
}
}Mantık & Akış bölümündeki tüm dersler
1Çok Boyutlu Diziler
2D Diziler Temelleri2D Dizi Elemanlarına Erişim2D Dizilerle İç İçe DöngülerÖzet - 2D DizilerMatris Toplama ve ÇıkarmaJagged Diziler3D Diziler ve ÖtesiYaygın 2D Dizi DesenleriÖzet - Diziler Hakkında Her Şey4HashSet 1. Kısım
HashSet Nedir?Eleman EklemeEleman KaldırmaElemanın Varlığını Kontrol EtmeBoş mu ve BoyutTemizle ve KlonlaÖzet - HashSet2HashMap Bölüm 1
HashMap Nedir?HashMap TanımlamaDeğerlere ErişimAnahtarın Varlığını Kontrol EtmeSözlükleri DeğiştirmeÖzet - HashMap3HashMap Bölüm 2
HashMap YöntemlerikeySet() ile YinelemeentrySet() ile Yinelemeİç İçe HashMapÖzet - Depo YönetimiÖzet - HashMap İşlemleri6İleri Akış Kontrolü
Etiketli İfadelerSwitch İfadesiDesen EşleştirmeKoruyucu Yan CümlelerÖzet - Akış Kontrolü9Proje - Benzersiz Kelime Sayacı
Metin Girişi ve DepolamaKelime İşleme