Java - So sánh 2 chuỗi bất kỳ được nhập từ bàn phím.

Viết chương trình sử dụng các hàm có sẵn trong chuỗi để so sánh 2 chuỗi bất kỳ nhập từ bàn phím và hiển thị kết quả so sánh ra màn hình.

Bài giải

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

Trong bài tập này, tôi sẽ giới thiệu đến các bạn một hàm mới dùng để so sánh 2 chuỗi đó là hàm compareToIgnoreCase(). Ở phần bài học, tôi đã giới thiệu hàm compareTo() cũng dùng để so sánh 2 chuỗi. Vậy trong ngôn ngữ lập trình Java thì hai hàm này cũng dùng để so sánh chuỗi nhưng nó có sự khác nhau như sau:

 Hàm compareTo(): so sánh 2 chuỗi có phân biệt chữ hoa chữ thường.
Hàm compareToIgnoreCase(): so sánh 2 chuỗi nhưng không phân biệt chữ hoa chữ thường.

Bài giải
public static void main(String[] args) {
	String chuoi1, chuoi2;
	int result;
	Scanner scanner = new Scanner(System.in);
		
	System.out.println("Nhập vào chuỗi thứ nhất: ");
	chuoi1 = scanner.nextLine();
	System.out.println("Nhập vào chuỗi thứ hai: ");
	chuoi2 = scanner.nextLine();
		
	System.out.println("Kết quả so sánh sử dụng hàm compareTo(): ");
	// so sánh 2 chuỗi sử dụng hàm compareTo()
	// compareTo(): so sánh có phân biệt chữ hoa chữ thường
	// nếu biến result < 0 thì chuỗi 1 < chuỗi 2
	// nếu biến result > 0 thì chuỗi 1 > chuỗi 2
	// nếu biến result == 0 thì chuỗi 1 = chuỗi 2
	result = chuoi1.compareTo(chuoi2);
	if (result < 0) {
		System.out.println("Chuỗi " + chuoi1 + " nhỏ hơn " + chuoi2);
	} else if (result > 0) {
		System.out.println("Chuỗi " + chuoi1 + " lớn hơn " + chuoi2);
	} else {
		System.out.println("Chuỗi " + chuoi1 + " bằng " + chuoi2);
	}
		
	System.out.println("Kết quả so sánh sử dụng hàm compareToIgnoreCase(): ");
	// so sánh 2 chuỗi sử dụng hàm compareToIgnoreCase()
	// compareToIgnoreCase(): so sánh không phân biệt chữ hoa chữ thường
	// nếu biến result < 0 thì chuỗi 1 < chuỗi 2
	// nếu biến result > 0 thì chuỗi 1 > chuỗi 2
	// nếu biến result == 0 thì chuỗi 1 = chuỗi 2
	result = chuoi1.compareToIgnoreCase(chuoi2);
	if (result < 0) {
		System.out.println("Chuỗi " + chuoi1 + " nhỏ hơn " + chuoi2);
	} else if (result > 0) {
		System.out.println("Chuỗi " + chuoi1 + " lớn hơn " + chuoi2);
	} else {
		System.out.println("Chuỗi " + chuoi1 + " bằng " + chuoi2);
	}
}

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

Nguồn: freetuts.net