1. Chuỗi là gì?

– Chuỗi là dãy các ký tự được đặt trong cặp dấu “ ”, mỗi ký tự được gọi là phần tử của chuỗi.

– Số lượng ký tự của một chuỗi được gọi là độ dài của chuỗi.

– Chuỗi có độ dài bằng 0 được gọi là chuỗi rỗng, viết là:  “”

Ví dụ:

2. Khai báo chuỗi

Cú pháp khai báo:

String <tên chuỗi>;

Hoặc

String <tên chuỗi>=“giá_trị_khởi_tạo”;

Trong đó, giá_trị_khởi_tạo của chuỗi có thể có hoặc không và nếu có thì phải đặt trong cặp dấu ” “.

Dùng từ khoá new:

String <tên chuỗi>=  new String(“giá_trị”);

Ví dụ:

String st;

String st1 = “Java”;

String st2 = new String(“Hoa Hau”);

3. Các phương thức xử lý chuỗi

a. Phương thức length()

Cú pháp: <tên chuỗi>.length();

Ý nghĩa: Trả về độ dài chuỗi.

Ví dụ:

st = “Hoa Hau Viet Nam”;

System.out.print(st.length());

Kết quả: 16

b. Phương thức charAt()

Cú pháp: <tên chuỗi>.charAt(int index);

Ý nghĩa: Trả về ký tự trong chuỗi có chỉ số là index.

Ví dụ:

String st = “Mai Phuong Thuy”;

System.out.println(st.charAt(7));

Kết quả: u

c. Phương thức concat()

Cú pháp: st1.concat(String st2);

Ý nghĩa: Phương thức có tác dụng nối chuỗi st2 vào cuối chuỗi st1 .

Ví dụ:

String st1 = “Hoa Hau”;

System.out.println(st1.concat(” Hoan Vu”));

Kết quả: Hoa Hau Hoan Vu

d. Phương thức compareTo()

Cú pháp: st1.compareTo(String st2);

Ý nghĩa: Trả về một số nguyên là kết quả so sánh hai chuỗi st1, st2. Nếu hai chuỗi đó bằng nhau thì kết quả bằng 0, nếu chuỗi st1 < st2 thì kết quả là số âm, ngược lại nếu chuỗi st1 > st2 thì kết quả là số dương.

Cách thực hiện so sánh:

  • Hai chuỗi được coi là bằng nhau nếu như chúng giống nhau hoàn toàn.

Ví dụ:

public class VDCompareTo {

public static void main(String[] args) {

String st1 = “HOA HAU”;

String st2 = “HOA HAU”;

System.out.println(st1.compareTo(st2));

}

}

Kết quả: 0

  • Nếu st1 và st2 là các chuỗi có độ dài khác nhau và st1 là đoạn đầu của st2 thì st1<st2. (Kết quả số nguyên trả về là số lượng ký tự chênh lệch của 2 chuỗi)

Ví dụ:

public class VDCompareTo {

public static void main(String[] args) {

String st1 = “THI”;

String st2 = “THIUNGXU”;

System.out.println(st1.compareTo(st2));

}

}

Kết quả: -5

  • Chuỗi st1 > st2 nếu kí tự đầu tiên khác nhau giữa chúng kể từ trái sang trong chuỗi st1 có mã ASCII lớn hơn. (Kết quả số nguyên trả về là giá trị mã ASCII chênh lệch)

Ví dụ:

public class VDCompareTo {

public static void main(String[] args) {

String st1 = “AD”;//D:68

String st2 = “AB”;//B:66

System.out.println(st1.compareTo(st2));

}

}

Kết quả: 2

e. Phương thức indexOf()

Cú pháp: st1.indexOf(String st2 [,int fromIndex]);

Ý nghĩa: Trả về một số nguyên là vị trí xuất hiện đầu tiên của chuỗi st2 trong st1 hoặc bắt đầu tử chỉ số fromIndex nếu có. Nếu chuỗi st2 không có trong chuỗi st1 thì kết quả trả về -1.

Ví dụ:

f. Phương thức lastIndexOf()

Cú pháp: st1.lastIndexOf(String st2);

Ý nghĩa: Trả về một số nguyên là vị trí xuất hiện cuối cùng của chuỗi st2 trong st1. Nếu chuỗi st2 không có trong chuỗi st1 thì kết quả trả về -1.

Ví dụ:

g. Phương thức replace()

Cú pháp: st1.replace(char oldChar, char newChar);

Ý nghĩa: Thực hiện thay thế ký tự oldChar bằng ký tự newChar trong chuỗi st1. Nếu ký tự cần thay thế không có trong chuỗi st1 thì chương trình sẽ trả về chuỗi st1.

Ví dụ:

Lưu ý: Phương thức replaceAll(): tương tự như phương thức replace() nhưng chỉ thực hiện thay thế chuỗi.

Phương thức replaceFirst(): tương tự như phương thức replaceAll() nhưng chỉ thực hiện thay thế chuỗi con đầu tiên có trong st1.

Ví dụ:

h.  Phương thức split()

Cú pháp:  st1.split(String st2, int limit)

Ý nghĩa: Trả về một mảng các chuỗi con bằng cách tách các phần tử trong chuỗi st1 bằng chuỗi st2.

limit: kiểm soát số lượng các chuỗi con kết quả.

Ví dụ:

i. Phương thức substring()

Cú pháp: st.substring(int startIndex [, int endIndex]);

Ý nghĩa: Tạo một chuỗi con từ vị trí có chỉ số là stratIndex trong chuỗi st. Trong trường hợp có endIndex, thì phương thức sẽ tạo một chuỗi con bắt đầu từ vị trí có chỉ số là startIndex và kết thúc tại vị trí có chỉ số endIndex – 1 trong chuỗi st.

Ví dụ:

j. Phương thức trim()

Cú pháp: st.trim();

Ý nghĩa: Thực hiện sẽ loại bỏ các khoảng trắng thừa ở đầu và cuối chuỗi st. Nếu chuỗi đó không có khoảng trắng thừa thì chương trình sẽ trả về chuỗi gốc.

Ví dụ:

k. Phương thức toUpperCase()

Cú pháp: st.toUpperCase();

Ý nghĩa: Trả về một chuỗi với tất cả các kí tự được chuyển thành các kí tự viết hoa.

Ví dụ:

i. Phương thức toLowerCase()

Cú pháp: st.toLowerCase();

Ý nghĩa: Trả về một chuỗi với tất cả các kí tự được chuyển thành các kí tự viết thường.

Ví dụ: