Đề bài: So sánh hai chuỗi ký tự không phân biệt chữ hoa chữ thường (theo mã Ascii).
Phân tích
Đề bài này phải gọi là gần giống hệt với bài: So sánh hai chuỗi ký tự (theo mã Ascii), bạn có thể xem qua nhé (mình khuyên là nên xem qua trước 😀 ).
Cũng tương tự, chúng ta cần xét xem chuỗi thứ nhất lớn hơn, nhỏ hơn hay bằng chuỗi thứ hai.
Chỉ cần sử dụng phương thức compareToIgnoreCase()
[alert-announce]Phương thức: public int compareToIgnoreCase(String str)
Đối số truyền vào là chuỗi String cần so sánh với chuỗi ban đầu. Phương thức trả về một trong 3 giá trị: 0, số âm, hoặc số dương.
Về cách thức hoạt động, compareToIgnoreCase() chỉ khác compareTo() ở chỗ trước khi so sánh, nó sẽ chuyển các chuỗi sang chữ thường sau đó mới thực hiện các công việc còn lại.
[/alert-announce]package com.ngockhuong.string; public class Exercise { public static void main(String[] args) { String str1 = "Chuỗi thứ 1"; String str2 = "Chuỗi thứ 2"; System.out.println("String 1: " + str1); System.out.println("String 2: " + str2); // So sánh 2 chuỗi, lưu kết quả vào biến result int result = str1.compareToIgnoreCase(str2); // Kiểm tra giá trị result if (result < 0) { System.out.println("\"" + str1 + "\"" + " nhỏ hơn " + "\"" + str2 + "\""); } else if (result == 0) { System.out.println("\"" + str1 + "\"" + " bằng " + "\"" + str2 + "\""); } else // if (result > 0) { System.out.println("\"" + str1 + "\"" + " lớn hơn " + "\"" + str2 + "\""); } } }
Kết quả
String 1: Chuỗi thứ 1 String 2: Chuỗi thứ 2 "Chuỗi thứ 1" nhỏ hơn "Chuỗi thứ 2"