SortedMap Interface trong Java



SortedMap Interface trong Java kế thừa lớp Map. Nó bảo đảm rằng các entry được duy trì theo thứ tự key tăng dần.

Một số phương thức ném NoSuchElementException khi không có item nào trong map đang gọi. Một ClassCastException được ném khi một đối tượng là không tương thích với các phần tử trong một map. Một NullPointerException bị ném nếu cố gắng sử dụng một đối tượng null khi null không được phép trong map.

Để hiểu sâu hơn các khái niệm được trình bày trong chương này, mời bạn tham khảo loạt bài: Ví dụ về Collection trong Java.

Các phương thức được khai báo bởi SortedMap trong Java được liệt kê trong bảng sau:

STT Phương thức và Miêu tả
1 Comparator comparator( )

Trả về bộ so sánh của SortedMap đang gọi. Nếu thứ tự tự nhiên được sử dụng cho map đang gọi, thì null được trả về

2 Object firstKey( )

Trả về key đầu tiên trong map đang gọi

3 SortedMap headMap(Object end)

Trả về một sorted map cho các map entry này với các key mà nhỏ hơn end

4 Object lastKey( )

Trả về key cuối cùng trong map đang gọi này

5 SortedMap subMap(Object start, Object end)

Trả về một map chứa các entry của nó với các key là lớn hơn hoặc bằng start và nhỏ hơn end

6 SortedMap tailMap(Object start)

Trả về một map chứa các entry của nó với các key là lớn hơn hoặc bằng start

Ví dụ

SortedMap Interface trong Java có sự triển khai trong các lớp đa dạng tương tự như TreeMap. Ví dụ sau minh họa tính năng của SortedMap Interface trong Java:

import java.util.*;

public class TreeMapDemo {

   public static void main(String args[]) {
      // Tao mot hash map
      TreeMap tm = new TreeMap();
      // Dat cac phan tu vao trong map
      tm.put("Zara", new Double(3434.34));
      tm.put("Mahnaz", new Double(123.22));
      tm.put("Ayan", new Double(1378.00));
      tm.put("Daisy", new Double(99.22));
      tm.put("Qadir", new Double(-19.08));
      
	  // Lay mot set cac entry
      Set set = tm.entrySet();
      // Lay mot iterator
      Iterator i = set.iterator();
      // Hien thi cac phan tu
      while(i.hasNext()) {
         Map.Entry me = (Map.Entry)i.next();
         System.out.print(me.getKey() + ": ");
         System.out.println(me.getValue());
      }
      System.out.println();
      // Gui 1000 vao trong tai khoan cua Zara
      double balance = ((Double)tm.get("Zara")).doubleValue();
      tm.put("Zara", new Double(balance + 1000));
      System.out.println("Balance hien tai cua Zara la: " +
      tm.get("Zara"));
   }
}
Quảng cáo

Nó sẽ cho kết quả sau:

Ayan: 1378.0
Daisy 99.22
Mahnaz: 123.22
Qadir: -19.08
Zara: 3434.34
Balance hien tai cua Zara la: 4434.34

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.

Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack

Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com

Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.


collection_trong_java.jsp


Tài liệu giáo viên