Mengubah dictionary
Termasuk bagian Logika & Alur dalam perjalanan Java di Coddy. Pelajaran 14 dari 59.
HashMaps juga mendukung penghapusan dan pembaruan entri menggunakan method put(), remove(), dan replace().
Sebagai contoh, mari kita isi HashMap terlebih dahulu:
HashMap<String, String> users = new HashMap<>();
users.put("alice", "Admin");
users.put("bob", "User");Untuk menghapus sebuah kunci:
users.remove("bob"); // Menghapus "bob"
System.out.println(users);
// {alice=Admin}Untuk memperbarui sebuah key:
users.replace("alice", "Guest");
// Mengubah alice menjadi Guest
users.replace("Charlie", "Admin");
// Tidak melakukan apa-apa (key "Charlie" tidak ada)Tantangan
MudahTulis method bernama modifyMap yang mengubah HashMap yang diberikan berdasarkan kondisi tertentu.
- Menerima HashMap bernama
datadengan ketentuan:- Key bertipe
String. - Nilai bertipe
Integer.
- Key bertipe
- Menerima String
key. - Menerima Integer
newValue.
Method harus mengembalikan HashMap yang diperbarui dengan mengikuti ketentuan berikut:
- Jika key ada di
datadan memiliki nilai yang sama dengannewValue, gunakanreplace(), tetapi naikkan nilainya sebesar 1. - Jika key ada, tetapi memiliki nilai yang berbeda, hapus key tersebut.
- Jika key tidak ada, tambahkan key tersebut dengan nilai
newValue.
Coba sendiri
// --- module untuk mengubah string hashmap menjadi hashmap ---
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
// -----------------------------
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public static HashMap<String, Integer> modifyMap(HashMap<String, Integer> data, String key, int newValue) {
// Tulis kodemu di sini
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String hashMapString = scanner.nextLine();
String key = scanner.nextLine();
int newValue = scanner.nextInt();
// Ubah string HashMap menjadi HashMap
Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
HashMap<String, Integer> data = new Gson().fromJson(hashMapString, mapType);
HashMap<String, Integer> result = modifyMap(data, key, newValue);
System.out.println(new Gson().toJson(result));
}
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika & Alur
1Array Multidimensi
Dasar Array 2DMengakses Elemen Array 2DLoop Bersarang dengan Array 2DRangkuman: Array 2DPenjumlahan dan Pengurangan MatriksArray BergerigiArray 3D dan Lebih JauhPola Umum Array 2DRangkuman: Semua tentang Array2HashMap Bagian 1
Apa itu HashMap?Deklarasikan HashMapMengakses nilaiPeriksa apakah key adaMengubah dictionaryRingkasan: HashMap3HashMap Bagian 2
Method HashMapIterasi dengan keySet()Iterasi dengan entrySet()HashMap BersarangRangkuman: Kelola GudangRangkuman: Operasi HashMap6Alur Kontrol Lanjutan
Pernyataan LabelEkspresi SwitchPencocokan PolaKlausa PenjagaRingkasan Alur Kontrol9Proyek: Penghitung Kata Unik
Input dan Penyimpanan TeksPemrosesan KataLatihan sendiri: Compiler Java online