Cách chuyển chữ thường thành chữ hoa trong Java
Trong bài viết này chúng ta sẽ tìm hiểu về cách chuyển đổi chữ thường thành chữ in hoa trong Java. Ví dụ người dùng nhập vào chuỗi "Freetuts.net" sau khi đổi sẽ thành "FRETUTS.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ữ in hoa.
1. Chuyển chữ thường thành chữ hoa trong Java sử dụ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.
Áp dụng nó ta sẽ chuyển đổi tất cả ký tự trong một chuỗi thành chữ in hoa.
Cụ thể ta sẽ sử phương thức toCharArray() để chuyển đổi string thành mảng char. Khi đó ta có thể sử dụng vòng lặp for để duyệt từng phần tử trong mảng.
Nếu ký tự nào nằm trong khoảng >= 97 và <= 122 thì trừ đi 32, khi đó ký tự sẽ thành chữ hoa.
import java.util.Scanner; 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 hoa: "); 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] >= 97 && charArray[i] <= 122){ 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ả:
2. Dùng hàm toUpperCase chuyển chữ thường thành chữ hoa trong Java
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 hoa đó chính là phương thức toUpperCase().
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 toUpperCase() để chuyển đổi rồi in ra màn hình.
import java.util.Scanner; 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 hoa: "); message = sc.nextLine(); System.out.println("Chuỗi sau khi in hoa: "); //sử dụng phương thức toUpperCase() để in hoa các ký tự trong chuỗi System.out.println(message.toUpperCase()); 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ữ thường thành chữ in hoa 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 !!!