แฮชแมปเข้า Java
Hashmap คืออะไร Java?
โดยทั่วไปแล้ว HashMap จะกำหนดไว้ คีย์เฉพาะ เพื่อให้สอดคล้องกัน ค่า ที่สามารถเรียกคืนได้ ณ จุดใดจุดหนึ่ง
คุณสมบัติของ Java แฮชแมป
ก) ดิ ค่า สามารถจัดเก็บไว้ในแผนที่โดยสร้างเป็น คีย์ - ค่า คู่. ค่าสามารถดึงข้อมูลได้โดยใช้คีย์โดยส่งผ่านไปยังวิธีที่ถูกต้อง
ข) ถ้า ไม่มีองค์ประกอบ มีอยู่ในแผนที่ มันจะโยน 'ไม่มีองค์ประกอบดังกล่าวข้อยกเว้น'.
c) ร้านค้า HashMap เท่านั้น การอ้างอิงวัตถุ- ด้วยเหตุนี้จึงไม่สามารถใช้งานได้ ชนิดข้อมูลดั้งเดิม เช่น double หรือ int ใช้คลาส wrapper (เช่น Integer หรือ Double) แทน.
การใช้ HashMaps ใน Java โปรแกรม:
ต่อไปนี้เป็นสองวิธีในการประกาศ Hash Map:
HashMap<String, Object> map = new HashMap<String, Object>(); HashMap x = new HashMap();
วิธีการแฮชแมปที่สำคัญ
- รับ (คีย์วัตถุ) – สิ่งนี้จะส่งคืนค่าที่เกี่ยวข้องกับคีย์ที่ระบุในสิ่งนี้ Java แฮชแมป
- ใส่ (คีย์วัตถุ, ค่าสตริง) – วิธีการนี้จะจัดเก็บค่าที่ระบุและเชื่อมโยงกับคีย์ที่ระบุในแผนผังนี้
Java ตัวอย่างแฮชแมป
ต่อไปนี้เป็นตัวอย่างการใช้งาน Java Hash Map:
import java.util.HashMap; import java.util.Map; public class Sample_TestMaps{ public static void main(String[] args){ Map<String, String> objMap = new HashMap<String, String>(); objMap.put("Name", "Suzuki"); objMap.put("Power", "220"); objMap.put("Type", "2-wheeler"); objMap.put("Price", "85000"); System.out.println("Elements of the Map:"); System.out.println(objMap); } }
Output:
Elements of the Map: {Type=2-wheeler, Price=85000, Power=220, Name=Suzuki}
ตัวอย่าง: ลบค่าออกจาก HashMap ตามคีย์
import java.util.*; public class HashMapExample { public static void main(String args[]) { // create and populate hash map HashMap<Integer, String> map = new HashMap<Integer, String>(); map.put(1,"Java"); map.put(2, "Python"); map.put(3, "PHP"); map.put(4, "SQL"); map.put(5, "C++"); System.out.println("Tutorial in Guru99: "+ map); // Remove value of key 5 map.remove(5); System.out.println("Tutorial in Guru99 After Remove: "+ map); } }
Output:
Tutorial in Guru99: {1=Java, 2=Python, 3=PHP, 4=SQL, 5=C++} Tutorial in Guru99 After Remove: {1=Java, 2=Python, 3=PHP, 4=SQL}
ให้เราถามคำถามสองสามข้อกับ Hash Map เพื่อทำความเข้าใจให้ดีขึ้น
ถาม: ดังนั้น Mr.Hash Map ฉันจะทราบได้อย่างไรว่ามีการกำหนดคีย์เฉพาะให้กับคุณหรือไม่
ตอบ: เยี่ยมเลย คุณสามารถใช้เมธอด containsKey(Object KEY) กับฉันได้ มันจะส่งคืนค่าบูลีนหากฉันมีค่าสำหรับคีย์ที่กำหนด
ถาม: ฉันจะค้นหากุญแจที่มีอยู่ทั้งหมดบนแผนที่ได้อย่างไร?
ตอบ: ฉันมีวิธีการที่เรียกว่าเป็น ชุดกุญแจ() ที่จะคืนกุญแจทั้งหมดบนแผนที่ ในตัวอย่างข้างต้น หากคุณเขียนบรรทัดเป็น –
System.out.println(objMap.keySet());
มันจะส่งคืน เอาท์พุต เช่น-
[ชื่อ, ประเภท, กำลัง, ราคา]
ในทำนองเดียวกัน หากคุณต้องการเพียงค่าทั้งหมดเท่านั้น ผมก็มีวิธี ค่า()
System.out.println(objMap.values());
มันจะส่งคืน เอาท์พุต เช่น-
[ซูซูกิ 2 ล้อ 220, 85000]
ถาม: สมมติว่าฉันต้องลบเฉพาะคีย์ใดคีย์หนึ่งออกจากแผนที่ ฉันจำเป็นต้องลบทั้งแผนที่หรือไม่
A: ไม่นะเพื่อน!! ผมมีวิธี เอาออก(Object KEY) ที่จะลบเฉพาะคู่คีย์-ค่านั้นเท่านั้น
ถาม: เราจะตรวจสอบได้อย่างไรว่าคุณมีคู่คีย์-ค่าอยู่จริงหรือไม่
A: แค่เช็คดูว่าว่างหรือเปล่า!! สรุปคือใช้. มันว่างเปล่า() วิธีการต่อต้านฉัน..