VietTuts

Học java cơ bản đến nâng cao

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • Design P
  • Java WS
  • MyBatis
  • Eclipse
  • VBA
Java cơ bản Các khái niệm Java OOPs

Java Collections

Collections là gì? ArrayList trong java LinkedList trong java ArrayList vs LinkedList List Interface trong java HashSet trong java LinkedHashSet trong java TreeSet trong java Map Interface trong java HashMap trong java LinkedHashMap trong java TreeMap trong java Hashtable trong java HashMap vs Hashtable EnumSet trong java EnumMap trong java Lớp Collections trong java Sorting trong Collections Comparable trong java Comparator trong java Comparable vs Comparator Lớp Properties trong java ArrayList vs Vector Array vs ArrayList
Java JDBC Các tính năng mới trong java Lập Trình Mạng Với Java Các Tính Năng Mới Trong Java Bài Tập Java Có Lời Giải Câu hỏi phỏng vấn java

TreeMap trong java


LinkedHashMap trong java
Hashtable trong java

Các điểm quan trọng về lớp TreeMap trong java là:

  • HashMap lưu trữ dữ liệu dưới dạng cặp key và value.
  • Nó chứa các key duy nhất.
  • Nó KHÔNG cho phép bất kỳ key nào là null và nhưng có thể có nhiều giá trị null.
  • Nó duy trì các phần tử được thêm vào theo thứ tự key tăng dần.

Sự khác biệt giữa HashMap và TreeMap là gì?

HashMapTreeMap
1) HashMap có thể chứa một key là null.TreeMap KHÔNG thể chứa bất kỳ key nào là null.
2) HashMap duy trì các phần tử không theo thứ tự.TreeMap duy trì các phần tử theo thứ tự key tăng dần.

Hierarchy của lớp TreeMap

TreeMap trong java

Khai báo của lớp TreeMap

Dưới đây là khai báo của lớp java.util.TreeMap trong java

public class TreeMap<K,V> extends AbstractMap<K,V>
    implements NavigableMap<K,V>, Cloneable, java.io.Serializable

Trong đó:

  • K: đây là kiểu key để lưu trữ.
  • V: đây là kiểu giá trị được ánh xạ.

Ví dụ về TreeMap trong java

Ví dụ 1: Sử dụng phương thức remove().

package vn.viettuts.collection;

import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

public class TreeMapExample1 {
    /**
     * main
     * 
     * @author viettuts.vn
     * @param args
     */
    public static void main(String args[]) {
        // init treeMap
        Map<Integer, String> treeMap = new TreeMap<Integer, String>();
        // add elements to treeMap
        treeMap.put(1, "Java");
        treeMap.put(3, "C++");
        treeMap.put(2, "PHP");
        treeMap.put(4, "Python");
        // show treeMap
        show(treeMap);
        // remove element
        treeMap.remove(4);
        // show treeMap after remove
        System.out.println("After remove:");
        // show treeMap
        show(treeMap);

    }

    /**
     * show map
     * 
     * @param viettuts.vn
     */
    public static void show(Map<Integer, String> map) {
        Set<Integer> keySet = map.keySet();
        for (Integer key : keySet) {
            System.out.println(key + " " + map.get(key));
        }
    }
}

Kết quả:

1 Java
2 PHP
3 C++
4 Python
After remove:
1 Java
2 PHP
3 C++

Ví dụ 2: TreeMap với key có kiểu String, value có kiểu Student.

Lớp Student.java

/**
 * Student class
 * 
 * @author viettuts.vn
 */
class Student implements Comparable<Student> {
    private String name;
    private int age;
    private String address;

    public Student() {
    }

    public Student(String name, int age, String address) {
        super();
        this.name = name;
        this.age = age;
        this.address = address;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    @Override
    public String toString() {
        return "Student@name=" + name + ",age=" + age + ",address=" + address;
    }
}

Lớp TreeMapExample2.java

package vn.viettuts.collection;

import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

public class TreeMapExample2 {
    /**
     * main
     * 
     * @author viettuts.vn
     * @param args
     */
    public static void main(String args[]) {
        // init treeMap
        Map<String, Student> treeMap = new TreeMap<String, Student>();
        // add elements to treeMap
        treeMap.put("1", new Student("A", 12, "Hanoi"));
        treeMap.put("3", new Student("C", 13, "Hanoi"));
        treeMap.put("2", null);
        treeMap.put("4", new Student("D", 14, "Hanoi"));
        treeMap.put("5", null);
        // show treeMap
        show(treeMap);
    }

    /**
     * show map
     * 
     * @param viettuts.vn
     */
    public static void show(Map<String, Student> map) {
        Set<String> keySet = map.keySet();
        for (String key : keySet) {
            System.out.println(key + " " + map.get(key));
        }
    }
}

Kết quả:

1 Student@name=A,age=12,address=Hanoi
2 null
3 Student@name=C,age=13,address=Hanoi
4 Student@name=D,age=14,address=Hanoi
5 null

LinkedHashMap trong java
Hashtable trong java

Bài viết liên quan:

  • Mảng (Array) trong java
  • ArrayList trong java
  • Sự khác nhau giữa Array với ArrayList
  • Sắp xếp các phần tử của List
  • Sự khác nhau giữa ArrayList và Vector
  • HashSet trong java
  • HashMap trong java
  • Sự khác nhau giữa HashMap và Hashtable
  • List câu hỏi phỏng vấn Java Collection

Recent Updates

Các tính năng của JUnit Test FrameworkVí dụ JUnit trên EclipseJUnit là gì?List câu hỏi phỏng vấn Java Collection201 câu hỏi phỏng vấn java core (phần 4)201 câu hỏi phỏng vấn java core (phần 3)201 câu hỏi phỏng vấn java core (phần 2)201 câu hỏi phỏng vấn java core (phần 1)TreeMap trong javaHashMap trong javaChuyển số thành tên cột trong excel vbaKết nối Excel VBA tới Access Database

VietTuts on facebook

Học Java Cơ Bản Đến Nâng Cao - VietTuts.Vn

Danh sách bài học

Học java
Học servlet
Học jsp
Học Hibernate
Học Struts2
Học Spring
Học SQL
Học tiếng Anh giao tiếp

Câu hỏi phỏng vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Struts2
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

About VietTuts.Vn

Hệ thống bài học trên VietTuts.Vn bao gồm các bài lý thuyết và thực hành về các công nghệ java và công nghệ web. Các bài lý thuyết trên hệ thống VietTuts.Vn được tham khảo và tổng hợp từ các trang http://javatpoint.com, http://www.tutorialspoint.com, http://docs.oracle.com/en ...

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | VietTuts.Vn team | Liên hệ | Chính sách - riêng tư