Memeriksa Keberadaan Elemen
Termasuk bagian Logika dan Alur dalam perjalanan C# di Coddy. Pelajaran 59 dari 66.
method Contains(element) memeriksa apakah elemen tertentu ada di HashSet. method ini mengembalikan true jika elemen ditemukan, dan false jika tidak.
Buat HashSet kosong:
HashSet<string> fruits = new HashSet<string>();Tambahkan beberapa elemen ke HashSet:
fruits.Add("Apple");
fruits.Add("Banana");Periksa apakah sebuah elemen ada:
bool hasApple = fruits.Contains("Apple"); // Mengembalikan true
bool hasOrange = fruits.Contains("Orange"); // Mengembalikan falseKamu dapat menggunakan hasilnya dalam pernyataan percabangan:
if (fruits.Contains("Apple"))
{
Console.WriteLine("Apple is in the set");
}Tantangan
MudahBuat method bernama ElementExists yang menerima dua argumen:
- HashSet berisi string (
set) - String (
element) yang akan diperiksa
Method tersebut harus memeriksa apakah element ada di dalam set dan mengembalikan pesan string:
- Jika element ada, kembalikan "The element 'X' exists in the set"
- Jika element tidak ada, kembalikan "The element 'X' does not exist in the set"
‘X’ adalah nilai element sebenarnya yang sedang diperiksa.
Coba sendiri
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
public class Program
{
public static string ElementExists(HashSet<string> set, string element)
{
// Tulis kodemu di sini
return "";
}
public static void Main()
{
// Baca baris pertama untuk memeriksa apakah formatnya JSON
string firstLine = Console.ReadLine();
string elementToCheck = Console.ReadLine();
HashSet<string> set = new HashSet<string>();
// Periksa apakah input berformat array JSON
if (firstLine != null && firstLine.StartsWith("[") && firstLine.EndsWith("]"))
{
try
{
// Ambil isi di antara tanda kurung siku
string arrayContent = firstLine.Substring(1, firstLine.Length - 2);
// Gunakan regex untuk mencocokkan semua string yang diapit tanda kutip
MatchCollection matches = Regex.Matches(arrayContent, @"""([^""]*)""");
foreach (Match match in matches)
{
// Tambahkan grup yang ditangkap (tanpa tanda kutip)
if (match.Groups.Count > 1)
{
set.Add(match.Groups[1].Value.Trim());
}
}
// Periksa apakah elemen berformat string JSON
Match elementMatch = Regex.Match(elementToCheck, @"""([^""]*)""");
if (elementMatch.Success && elementMatch.Groups.Count > 1)
{
elementToCheck = elementMatch.Groups[1].Value;
}
}
catch (Exception ex)
{
Console.WriteLine($"Error parsing JSON input: {ex.Message}");
return;
}
}
else
{
// Proses input biasa yang dipisahkan koma
string[] elements = firstLine.Split(',');
foreach (string element in elements)
{
set.Add(element.Trim());
}
}
string result = ElementExists(set, elementToCheck);
Console.WriteLine(result);
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika dan Alur
1array Multidimensi
Dasar-Dasar array 2DMendeklarasikan dan Menginisialisasi array 2DMengakses Elemen array 2DPerulangan Bersarang dengan array 2Darray BergerigiOperasi Matriks UmumRangkuman: array Multidimensi4Teknik Alur Kontrol
Pengembalian DiniKlausa PenjagaPernyataan Lompatan (goto)Break dan ContinueMeratakan Percabangan Bersarang7Operator Logika Lanjutan
Evaluasi Hubung SingkatOperator Logika PercabanganPrioritas OperatorRingkasan Operator Lanjutan2Pengambilan Keputusan Tingkat Lanjut
Beberapa KondisiLogika Boolean yang KompleksPerbandingan If dan SwitchPernyataan Switch BersarangUlasan: Pengambilan Keputusan Tingkat Lanjut5Penanganan Exception
Dasar Try-CatchJenis ExceptionBeberapa Blok CatchBekerja dengan fileBlok FinallyUsing vs. Try-FinallyException KustomRingkasan: Penanganan error8Sistem Analisis Data
Penyiapan Pengumpulan DataLogika Entri Data11HashSet Bagian 1
Apa itu HashSet?Menambahkan ElemenMenghapus ElemenMemeriksa Keberadaan ElemenKosong dan UkuranRangkuman: HashSet3Peningkatan Loop
Performa LoopIterasi yang KompleksSetiap Jenis LoopRefactoring LoopRangkuman: Loop yang Dioptimalkan6Penanganan Null
Dasar Referensi NullTipe Nilai NullablePola Pemeriksaan NullPemrograman DefensifRingkasan: Keamanan NullLatihan sendiri: Compiler C# online