Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Chương trình Java sắp xếp Map theo khóa

Trong bài này, chúng ta sẽ hiểu cách sắp xếp Map theo khóa. Interface Map trong Java (java.util.Map) biểu diễn ánh xạ khóa-giá trị. Cụ thể, Map lưu trữ các cặp khóa-giá trị, mỗi khóa liên kết một giá trị cụ thể.

Dưới đây là minh họa:

Giả sử đầu vào:

Map đầu vào: {1=Scala, 2=Python, 3=Java}

Đầu ra mong muốn:

Bước 1 - BẮT ĐẦU
Bước 2 - Khai báo...
Bước 3 - Định nghĩa giá trị.
Bước 4 - Tạo Map, thêm giá trị bằng 'put'.
Bước 5 - Tạo TreeMap chuỗi.
Bước 6 - Map sắp xếp theo khóa lưu vào TreeMap.
Bước 7 - Hiển thị ra console.
Bước 8 - KẾT THÚC

Ví dụ 1

Gom thao tác dưới hàm 'main'.

import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;

public class Demo {
    public static void main(String[] args) {
        System.out.println("Các gói cần thiết đã được import");
        Map<String, String> input_map = new HashMap<>();
        input_map.put("1", "Scala");
        input_map.put("3", "Java");
        input_map.put("2", "Python");
        System.out.println("Map định nghĩa: " + input_map);
        TreeMap<String, String> result_map = new TreeMap<>(input_map);
        System.out.println("\nMap đã sắp xếp theo khóa:\n" + result_map);
    }
}

Kết quả

Các gói cần thiết đã được import
Map định nghĩa: {1=Scala, 2=Python, 3=Java}
Map đã sắp xếp theo khóa:
{1=Scala, 2=Python, 3=Java}

Ví dụ 2

Đóng gói thao tác vào hàm thể hiện OOP.

import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;

public class Demo {
    static void sort(Map<String, String> input_map){
        TreeMap<String, String> result_map = new TreeMap<>(input_map);
        System.out.println("\nMap đã sắp xếp theo khóa:\n" + result_map);
    }
    public static void main(String[] args) {
        System.out.println("Các gói cần thiết đã được import");
        Map<String, String> input_map = new HashMap<>();
        input_map.put("1", "Scala");
        input_map.put("3", "Java");
        input_map.put("2", "Python");
        System.out.println("Map định nghĩa: " + input_map);
        sort(input_map);
    }
}

Kết quả

Các gói cần thiết đã được import
Map định nghĩa: {1=Scala, 2=Python, 3=Java}
Map đã sắp xếp theo khóa:
{1=Scala, 2=Python, 3=Java}