1. Phương thức compareTo() trong Java là gì?
Phương thức compareTo() được sử dụng để thực hiện sắp xếp tự nhiên trên chuỗi. Sắp xếp tự nhiên có nghĩa là thứ tự sắp xếp áp dụng trên đối tượng.
Ví dụ: Thứ tự cho Chuỗi, thứ tự số để Sắp xếp số nguyên, v.v ...
Sắp xếp thứ tự chuỗi điển hình là sử dụng bảng chữ cái alphabet. Các phương thức so sánh thực hiện so sánh tuần tự các chữ cái trong chuỗi có cùng vị trí index.
-
Bạn đang tìm hiểu về Java?? Có thể bạn nên tham khảo Khóa học Java Fulsllstack ngay để tăng tốc lộ trình của mình.
Phương thức compareTo() trong Java được định nghĩa trong interface java.lang.Comparable
Hướng dẫn sử dụng Phương thức compareTo() để so sánh chuỗi trong Java
Cú pháp của phương thức compareTo()
Tham số đầu vào:
str - Phương thức này chỉ chấp nhận một đầu vào kiểu String
Kết quả trả về:
Phương thức compareTo() trả về dữ liệu kiểu int là kết quả mô tả việc so sánh giữa 2 chuỗi:
-
return > 0 khi chuỗi truyền vào để so sánh lớn hơn chuỗi ban đầu
-
return == 0 khi hai chuỗi được coi là bằng nhau
-
return < 0 khi chuỗi truyền vào để so sánh nhỏ hơn chuỗi ban đầu
2. Ví dụ về Phương thức compareto() trong Java
Chúng ta thử xem ví dụ so sánh ký tự a, c với ký tự b xem thế nào nhé.
Kết quả chúng ta nhận được là:
Ở đây chúng ta thấy trong bảng chữ cái:
-
c xếp sau b nên trả về kết quả là -1
-
Truyền b vào để so sánh với chuỗi ban đầu thì sẽ trả về kết quả 0
-
a xếp trước b nên kết quả trả về là 1
Lưu ý: Sử dụng Phương thức compareTo() là có phân biệt Hoa - Thường trong các chuỗi so sánh.
Tuy nhiên, bạn cũng có thể sử dụng phương thức "compareToIgnoreCase" nếu không muốn kết quả trả về bị ảnh hưởng bởi kiểu ký tự Hoa - Thường.
3. Ví dụ so sánh phương thức compareTo() và compareToIgnoreCase()
Để bạn hiểu rõ hơn, chúng ta sẽ thử xem ví dụ sau đây. Khi so sánh chuỗi có ký tự viết Hoa và không có ký tự viết Hoa.
Kết quả chúng ta nhận được là:
4. Khi nào thì nên sử dụng phương thức compareTo()
Phương thức CompareTo() được sử dụng để so sánh hai chuỗi với nhau. Mỗi ký tự trong hai chuỗi được chuyển đổi thành giá trị Unicode.
Căn cứ kết quả trả về chúng ta sẽ tiếp tục thực hiện hành động nào đó.
Giống như ở trong ví dụ này. Căn cứ kết quả trả về để thông báo xem là thứ tự sắp xếp tự nhiên của chuỗi nào trước, sau hay là bằng chuỗi ban đầu.
Kết quả chúng ta nhận được:
Tổng kết
Như vậy là bạn đã biết cách sử dụng Phương thức compareTo() để so sánh 2 chuỗi trong Java rồi đó. Tùy theo kết quả trả về mà chúng ta viết chương trình thực hiện hành động tiếp theo.
---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Dạy học Lập trình chất lượng cao (Since 2002). Học làm Lập trình viên. Hành động ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0914939543 - 0353655150
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
#niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp