Java - Viết chương trình tìm khóa nhỏ nhất trong TreeMap mà lớn hơn hoặc bằng với 1 khóa được đưa ra.

Viết chương trình nhập vào các phần tử có khóa kiểu số thực cho TreeMap. Sau đó tìm khóa nhỏ nhất trong các phần tử đó mà có giá trị lớn hơn hoặc bằng với 1 khóa bất kỳ được đưa ra.

Bài giải

-------------------- ######## --------------------

Hướng dẫn: Để tìm khóa nhỏ nhất trong các phần tử đó mà có giá trị lớn hơn hoặc bằng với 1 khóa bất kỳ được đưa ra, Java cung cấp cho chúng ta phương thức ceilingKey(). Phương thức này sẽ trả về khóa nhỏ nhất có giá trị lớn hơn hoặc bằng với 1 khóa bất kỳ được đưa ra, nếu không tìm thấy giá trị khóa cần tìm thì sẽ trả về null.

Cú pháp
ceilingKey(K key);

, trong đó key là khóa được đưa ra.

Bài giải
pubic static void main(String[] args) {
	TreeMap<Float, Double> treeMap = new TreeMap<>();
	treeMap.put(1.5f, 5.1d);
	treeMap.put(3.23f, 3.32d);
	treeMap.put(1.16f, 6.11d);
	treeMap.put(7f, 8d);
	treeMap.put(7.25f, 0.4d);

	// tìm khóa nhỏ nhất lớn hơn hoặc bằng 1.5f
	System.out.println("Khóa cần tìm = " + treeMap.ceilingKey(1.5f));
		
	// tìm khóa nhỏ nhất lớn hơn hoặc bằng 1.15f
	System.out.println("Khóa cần tìm = " + treeMap.ceilingKey(1.15f));
		
	// tìm khóa nhỏ nhất lớn hơn hoặc bằng 6.9f
	System.out.println("Khóa cần tìm = " + treeMap.ceilingKey(6.9f));
	
	// tìm khóa nhỏ nhất lớn hơn hoặc bằng 7.26f
	// kết quả sẽ trả về null
	System.out.println("Khóa cần tìm = " + treeMap.ceilingKey(7.26f));
}

Kết quả sau khi biên dịch chương trình:

Nguồn: freetuts.net