Saya mencoba menerapkan kamus (seperti dalam buku fisik). Saya punya daftar kata dan artinya.
Struktur / tipe data apa yang disediakan Java untuk menyimpan daftar kata dan artinya sebagai pasangan kunci / nilai.
Bagaimana, diberi kunci, dapatkah saya menemukan dan mengembalikan nilainya?
java
dictionary
key-value
pengguna1849819
sumber
sumber
Jawaban:
Anda akan menginginkan
Map<String, String>
. Kelas-kelas yang mengimplementasikanMap
antarmuka meliputi (tetapi tidak terbatas pada):HashMap
LinkedHashMap
Hashtable
Masing-masing dirancang / dioptimalkan untuk situasi tertentu (buka dokumen masing-masing untuk info lebih lanjut).
HashMap
mungkin yang paling umum; masuk ke default.Misalnya (menggunakan a
HashMap
):sumber
Map
(periksa javadoc)Map<String, String> map = new HashMap<>();
Ini menciptakan kamus teks (string):
Anda kemudian menggunakannya sebagai:
Map<String, String> dictionary = new Map<String, String>();
Ini berfungsi dengan baik.
sumber
dictionary["key"]
tidak akan bekerja - seharusnyadictionary.get("key")
.Gunakan antarmuka Peta dan implementasi seperti HashMap
sumber
Ada Kamus Kelas Abstrak
http://docs.oracle.com/javase/6/docs/api/java/util/Dictionary.html
Namun ini membutuhkan implementasi.
Java memberi kita implementasi yang bagus yang disebut Hashtable
http://docs.oracle.com/javase/6/docs/api/java/util/Hashtable.html
sumber
Dictionary
sudah usang dan tidak ada implementasi yang memperpanjangnya.