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:

Trở thành Android Developer chuyên nghiệp với 30h học
Bạn muốn trở thành một nhà phát triển mobile app trên nền tảng Android? Vậy thì đây là khóa học rất phù hợp với bạn, chi phí rẻ, học online tại nhà.
XEM NGAY

Nguồn: freetuts.net