Java字典類別:初學者指南

介紹

你好,未來的Java巫師!今天,我們將踏上一段令人興奮的旅程,進入Java字典的世界。現在,你可能在想,“字典?那不是我用來查詞的東西嗎?”嗯,你沒有錯,但在編程世界裡,字典有點不同,而且非常實用!

Java - Dictionary

在Java中,字典就像一個神奇的盒子,你可以存儲一對對的東西。想象一下,你有一個鞋盒,每雙鞋都有一個相配的襪子。字典的工作原理類似於此 - 你放入一個“鍵”(就像鞋子),它會還給你一個“值”(就像相配的襪子)。很酷,對吧?

讓我們深入探究一下,看看如何在我们的Java冒險中使用這個強大的工具!

類別聲明

首先,讓我們看看如何在Java中聲明一個字典:

import java.util.Dictionary;

public class MyDictionary extends Dictionary<Integer, String> {
// 你的代碼在這裡
}

現在,不要讓這個嚇到你!讓我們來分解它:

  1. 我們從Java的公用包中導入字典類別。
  2. 我們創建自己的類別,稱為MyDictionary
  3. 我們表示我們的字典將使用整數作為鍵和字符串作為值。

把它想成是創建一個特殊的盒子,我們在盒子外面放數字(整數),在盒子裡面放詞語(字符串)。

類別構造器

現在我們有了字典盒,讓我們看看如何創建它:

public MyDictionary() {
// 構造器代碼在這裡
}

這稱為構造器。它就像建造我們字典盒的工廠。我們可以先留空,因為Java將提供一種默認的方式來創建我們的字典。

類別方法

這裡魔法發生了!字典帶有一些內建的超能力(方法),我們可以使用。讓我們看看一些:

@Override
public int size() {
// 返回鍵-值對的數量
}

@Override
public boolean isEmpty() {
// 檢查字典是否為空
}

@Override
public String get(Object key) {
// 獲取與鍵相關聯的值
}

@Override
public String put(Integer key, String value) {
// 添加新的鍵-值對或更新現有的對
}

@Override
public String remove(Object key) {
// 刪除一個鍵-值對
}

現在不用擔心@Override。這只是我們告訴Java我們正在使用這些方法的自己的版本。

讓我們分解這些:

  1. size():計算字典中有多少對。
  2. isEmpty():檢查我們的字典是否為空(就像檢查我們的鞋盒裡有沒有鞋子一樣)。
  3. get(Object key):查找給定鍵的值(就像尋找與鞋子相配的襪子一樣)。
  4. put(Integer key, String value):添加新的對或更新現有的對。
  5. remove(Object key):從我們的字典中刪除一對。

繼承的方法

我們的字典還從其父類繼承了一些方法。把這些想成是我們字典盒附帶的額外功能:

方法 描述
clone() 創建字典的副本
equals(Object obj) 檢查兩個字典是否相同
hashCode() 為字典生成唯一的代碼
toString() 將字典轉換為字符串
notify() 唤醒正在等待此字典的線程
notifyAll() 唤醒所有正在等待此字典的線程
wait() 使當前線程等待

這些方法在更先進的編程情景中可能非常有幫助。

將映射添加到整數,整數字典示例

現在,讓我們把這些知識投入實踐!我們將創建一個將學生ID(整數)映射到其年齡(也是整數)的字典:

import java.util.Dictionary;
import java.util.Hashtable;

public class StudentAges {
public static void main(String[] args) {
// 創建新的字典
Dictionary<Integer, Integer> studentAges = new Hashtable<>();

// 添加一些學生ID和年齡
studentAges.put(1001, 18);
studentAges.put(1002, 19);
studentAges.put(1003, 20);

// 列印字典
System.out.println("Student Ages: " + studentAges);

// 獲取一個學生的年齡
int studentId = 1002;
int age = studentAges.get(studentId);
System.out.println("Age of student with ID " + studentId + ": " + age);

// 刪除一個學生
studentAges.remove(1001);

// 檢查字典是否為空
System.out.println("Is the Dictionary empty? " + studentAges.isEmpty());

// 獲取字典的大小
System.out.println("Number of students: " + studentAges.size());
}
}

讓我們分解這些:

  1. 我們創建了一個新的字典,稱為studentAges
  2. 我們添加了三名學生及其ID和年齡。
  3. 我們列印出整個字典。
  4. 我們檢索並列印ID為1002的學生的年齡。
  5. 我們刪除了ID為1001的學生。
  6. 我們檢查字典是否為空(不是!)。
  7. 最後,我們列印出字典中剩下多少學生。

當你運行這段代碼時,你將看到所有這些操作實際上是如何工作的!

就是這樣,各位!你剛剛走出了Java字典世界的第一步。請記住,熟練是完美的關鍵,所以不要害怕嘗試不同的鍵和值。誰知道呢?也許你會利用字典創造出下一個偉大的應用程序!

編程愉快,願你的字典永遠井井有條!

Credits: Image by storyset