Cách chuyển chữ hoa thành chữ thường trong Java
Trong bài viết này chúng ta sẽ tìm hiểu về cách chuyển đổi chữ in hoa thành chữ thường trong Java. Ví dụ người dùng nhập vào chuỗi "Freetuts.Net" sau khi đổi sẽ thành "freetuts.net".
Trong chuỗi có thể vừa có ký tự thường vừa có ký tự hoa, nhưng sau khi chuyển đổi thì tất cả đều thành chữ thường.
Chuyển chữ hoa thành chữ thường Java bằng mã ASCII
Trước khi viết chương trình, chúng ta cùng tìm hiểu về mã [ASCII] đã nhé.
Theo như bảng mã ASCII thì tất cả các ký tự chữ hoa (A-Z) có giá trị ASCII nằm trong khoảng từ 65 đến 90. Các ký tự chữ thường tương ứng (a-z) của chúng có giá trị ASCII từ 97 đến 122 (hơn 32).
Bài viết này được đăng tại [free tuts .net]
Ví dụ: ký tự 'A' có mã ASCII là 65 thì ký tự 'a' có mã ASCII = 65 + 32 = 97.
Bây giờ ta bắt đầu viết chương trình chuyển đổi chữ in hoa thành chữ thường nhé.
Sử dụng class Scanner để nhận dữ liệu từ bàn phím.
Scanner sc = new Scanner(System.in); String message; System.out.println("\n\nNhập vào chuỗi cần chuyển đổi: "); message = sc.nextLine();
Khai báo một mảng char charArray, sau đó chuyển đổi chuỗi message thành một mảng kiểu char.
char[] charArray = message.toCharArray();
Sử dụng vòng lặp for lặp từ 0 đến độ dài của mảng charArray. Nếu ký tự nào có giá trị ASCII trong khoảng >= 65 và <= 90 thì ta cộng thêm 32.
for(int i = 0; i < charArray.length; i++) { if(charArray[i] >= 65 && charArray[i] <= 90){ charArray[i] += 32; } }
Cuối cùng ta sẽ chuyển mảng charArray thành chuỗi message bằng phương thức String.valueOf() rồi hiển thị ra màn hình.
Full code:
import java.util.Scanner; public class Main { public static void main(String[] args) { // sử dụng class Scanner để nhận dữ liệu từ bàn phím Scanner sc = new Scanner(System.in); String message; System.out.println("\n\nNhập vào chuỗi cần chuyển đổi: "); message = sc.nextLine(); //khai báo một mảng, sau đó sử dụng phương thức toCharArray() //để chuyển đổi message thành một mảng kiểu char char[] charArray = message.toCharArray(); //sử dụng vòng lặp for để duyệt các phần tử trong charArray for(int i = 0; i < charArray.length; i++) { if(charArray[i] >= 65 && charArray[i] <= 90){ charArray[i] += 32; } } // chuyển đổi mảng char thành string message = String.valueOf(charArray); System.out.println("Chuỗi sau khi đổi: \n" + message); System.out.println("\n---------------------------------"); System.out.println("Chương trình này được đăng tại Freetuts.net"); } }
Kết quả:
Chuyển chữ hoa thành chữ thường Java bằng hàm toLowerCase()
Trong class String Java có một phương thức có thể chuyển tất cả ký tự trong một chuỗi thành chữ in thường đó chính là phương thức toLowerCase().
Vây nên ta chỉ cần yêu cầu người dùng nhập vào một chuỗi, sau đó sử dụng phương thức toLowerCase() để chuyển đổi rồi in ra màn hình.
import java.util.Scanner; public class Main { public static void main(String[] args) { // sử dụng class Scanner để nhận dữ liệu từ bàn phím Scanner sc = new Scanner(System.in); String message; System.out.println("\n\nNhập vào chuỗi cần in thường: "); message = sc.nextLine(); System.out.println("Chuỗi sau khi in hoa: "); //sử dụng phương thức toLowerCase() để in thường các ký tự trong chuỗi System.out.println(message.toLowerCase()); System.out.println("\n---------------------------------"); System.out.println("Chương trình này được đăng tại Freetuts.net"); } }
Kết quả:
Như vậy là chúng ta đã tìm hiểu xong cách chuyển chữ in hoa thành chữ thường trong Java. Các bạn có thể tìm hiểu về các bài tập Java khác tại đây, chúc các bạn thành công !!!