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:
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.
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:
Câu hỏi thường gặp liên quan:
- Java - So sánh 2 chuỗi bất kỳ được nhập từ bàn phím.
- Java - Nhập vào số nguyên bất kỳ và in ra số dòng của chuỗi tương ứng với số đó.
- Java - Đếm số lần xuất hiện ký tự 'a' trong chuỗi nhập từ bàn phím.
- Java - Nhập vào 1 số nguyên n và 1 chuỗi bất kỳ, sau đó in ra chuỗi được ghép từ n lần chuỗi đó.
- Java - Nhập vào 1 chuỗi và in các ký tự trong chuỗi đó ra màn hình.
- Java - Đếm số khoảng trắng có trong chuỗi được nhập từ bàn phím.
- Java - Tách các từ có trong chuỗi và hiển thị mỗi từ trên 1 dòng.
- Java - Kiểm tra một chuỗi có phải là chuỗi Panlyndrome hay không.