Hashmap trong Java là gì?
HashMap về cơ bản chỉ định các khóa duy nhất cho các giá trị tương ứng có thể được truy xuất tại bất kỳ điểm nhất định nào.
Các tính năng của Java Hashmap
a) Các giá trị có thể được lưu trữ trong một bản đồ bằng cách tạo thành một cặp khóa-giá trị . Giá trị có thể được truy xuất bằng cách sử dụng khóa bằng cách chuyển nó đến phương thức chính xác.b) Nếu không có phần tử nào tồn tại trong Bản đồ, nó sẽ ném ra một ' NoSuchElementException' .
c) HashMap chỉ lưu trữ các tham chiếu đối tượng . Đó là lý do tại sao, không thể sử dụng các kiểu dữ liệu nguyên thủy như double hoặc int. Thay vào đó, hãy sử dụng lớp trình bao bọc (như Số nguyên hoặc Đôi).
Sử dụng HashMaps trong các chương trình Java:
Sau đây là hai cách để khai báo Hash Map:HashMapmap = new HashMap ();HashMap x = new HashMap();
Các phương pháp Hashmap quan trọng
- get (Object KEY) - Điều này sẽ trả về giá trị được liên kết với một khóa được chỉ định trong bản đồ băm Java này.
- put (Object KEY, String VALUE) - Phương thức này lưu trữ giá trị được chỉ định và liên kết nó với khóa được chỉ định trong bản đồ này.
Ví dụ về Java Hashmap
Sau đây là một triển khai mẫu của java Hash Map:import java.util.HashMap;import java.util.Map;public class Sample_TestMaps{public static void main(String[] args){MapobjMap = new HashMap ();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);}}
Đầu ra:
Elements of the Map:{Type=2-wheeler, Price=85000, Power=220, Name=Suzuki}
Ví dụ 2: Xóa một giá trị khỏi HashMap dựa trên khóa
import java.util.*;public class HashMapExample {public static void main(String args[]) {// create and populate hash mapHashMapmap = new HashMap ();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 5map.remove(5);System.out.println("Tutorial in Guru99 After Remove: "+ map);}}
Đầu ra:
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}
Cho phép chúng tôi hỏi một vài truy vấn đối với chính Bản đồ băm để biết rõ hơn về nó
Q: Vậy Mr.Hash Map, làm cách nào để tôi có thể tìm thấy một khóa cụ thể đã được chỉ định cho bạn?A: Tuyệt vời, bạn có thể sử dụng phương thức containsKey (Object KEY) với tôi, nó sẽ trả về giá trị Boolean nếu tôi có giá trị cho khóa đã cho. H: Làm cách nào để tìm tất cả các khóa khả dụng hiện có trên Bản đồ?A: Tôi có một phương thức được gọi là keyet () sẽ trả về tất cả các khóa trên bản đồ. Trong ví dụ trên, nếu bạn viết một dòng là - System.out.println (objMap.keySet ());Nó sẽ trả về một đầu ra là-[Tên, Loại, Công suất, Giá]
Tương tự, nếu bạn chỉ cần tất cả các giá trị, tôi có một phương thức giá trị (). System.out.println (objMap.values ());
Nó sẽ trả về kết quả đầu ra là-
[Suzuki, xe 2 bánh, 220, 85000] Hỏi: Giả sử, tôi chỉ cần xóa một khóa cụ thể khỏi Bản đồ, tôi có cần xóa toàn bộ Bản đồ không?
A: Không bạn ơi !! Tôi có một phương pháp xóa (Object KEY) sẽ chỉ xóa cặp khóa-giá trị cụ thể đó. H: Làm cách nào chúng tôi có thể kiểm tra xem bạn có thực sự chứa một số cặp khóa-giá trị hay không?
A: Chỉ cần kiểm tra xem tôi có trống hay không !! Tóm lại, hãy sử dụng phương thức isEmpty () để chống lại tôi;)