Cách viết hoa ký tự đầu tiên trong Java
Trong bài viết nãy chúng ta sẽ tìm hiểu về cách viết hoa ký tự đầu tiên trong Java. Ví dụ chúng ta có chuỗi "freetuts.net" sau khi chuyển đổi sẽ thành "Freetuts.net".
Để hiểu được bài này, các bạn cần có kiến thức căn bản về Java:
- Nhập xuất trong Java.
- Chuỗi trong Java.
- Các phương thức trong String Java.
1. In hoa ký tự đầu tiên của một chữ
Ở ví dụ này mình sẽ in hoa ký tự đầu bằng phương pháp thủ công. Cụ thể là mình sẽ tách chữ ban đầu thành hai phần: 1 phần là ký tự đầu tiên của chữ và phần thứ hai là các ký tự còn lại.
Sau đó sử dụng phương thức toUpperCase() để in hoa phần đầu tiên rồi gộp hai phần đó lại.
Bài viết này được đăng tại [free tuts .net]
import java.util.Scanner; class Main { public static void main(String[] args) { //khai báo và khởi tạo một string name String name = "freetuts.net"; System.out.println("\n\nChuỗi ban đầu: " + name); // tạo hai chuỗi con firstLetter và remainingLetters // chuỗi firstLetter chứa chữ cái đầu tiên của name String firstLetter = name.substring(0, 1); // chuỗi remainingLetters chứa phần còn lại của name String remainingLetters = name.substring(1, name.length()); //sử dụng phương thức toUpperCase() để chuyển đổi firstLetter thành chữ in hoa firstLetter = firstLetter.toUpperCase(); //sau khi chuyển đổi thì gộp chúng lại name = firstLetter + remainingLetters; System.out.println("Chuỗi sau khi đổi: " + name); System.out.println("\n---------------------------------"); System.out.println("Chương trình này được đăng tại Freetuts.net"); } }
Kết quả:
2. In hoa ký tự đầu tiên của mỗi chữ trong chuỗi
Ở ví dụ này chúng ta cần in hoa ký tự đầu của mỗi chữ trong một chuỗi, vì vậy không thể sử dụng phương pháp thủ công.
Thay vào đó ta sẽ chuyển chuỗi thành một mang char, khi đó ta có thể dùng vòng lặp for để duyệt từng ký tự trong mảng.
Khi đó đơn giản ta chỉ cần sử dụng phương thức toUpperCase() để in hoa ký tự đầu của mỗi phần tử trong mảng.
Cuỗi cùng mình sẽ sử dụng phương thức String.valueOf() để chuyển mảng char thành string, 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 ký tự đầu: "); 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(); boolean foundSpace = true; //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++) { // nếu phần tử trong mảng là một chữ cái if(Character.isLetter(charArray[i])) { // kiểm tra khoảng trắng có trước chữ cái if(foundSpace) { //đổi chữ cái thành chữ in hoa bằng phương thức toUpperCase() charArray[i] = Character.toUpperCase(charArray[i]); foundSpace = false; } } else { foundSpace = true; } } // 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ả:
Như vậy là chúng ta đã tìm hiểu xong cách viết hoa ký tự đầu tiên của mỗi ký tự 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 !!!