8.1 Kí t
ự
Trong Java cũng nh các ngôn ng h
ng đ i t
ng khác thì
ư
ữ ướ
ố ượ
đ i t
ng
ố ượ là t p h p nh ng d li u có
ậ
ợ
ữ
ữ ệ
liên quan, cùng v i m t t p các ph
ng th c. Nh ng ph
ng th c nafyhoajt đ ng trên đ i t
ng k
ớ
ộ ậ
ươ
ứ
ữ
ươ
ứ
ộ
ố ượ
ể
trên, th c hi n tính toán và đôi lúc thay đ i d li u trong đ i t
ng đó.
ự
ệ
ổ ữ ệ
ố ượ
String (chu i kí t ) là các đ i t
ng, b i v y b n có th h i “Có d li u nào đ
c ch a trong m t đ i
ỗ
ự
ố ượ
ở ậ ạ
ể ỏ
ữ ệ
ượ
ứ
ộ ố
t
ng
ượ String?” và “Có nh ng ph ng th c nào mà ta có th kích ho t đ c t đ i t ng
ữ
ươ
ứ
ể
ạ ượ ừ ố ượ String?” Nh ng
ữ
thành ph n trong m t đ i t
ng
ầ
ộ ố ượ String là các ch cái, hay t ng quát h n, là nh ng kí t . Không ph i
ữ
ổ
ơ
ữ
ự
ả
m i kí t đ u là ch cái; còn nh ng kí t là ch s , kí hi u, và các th khác. Đ đ n gi n tôi s g i chúng
ọ
ự ề
ữ
ữ
ự
ữ ố
ệ
ứ
ể ơ
ả
ẽ ọ
đ u là các ch cái. Có nhi u ph
ng th c khác nhau, nh ng trong sách này ch dùng m t s ít. Các
ề
ữ
ề
ươ
ứ
ư
ỉ
ộ ố
ph
ng th c còn l i đ
c ch d n
ươ
ứ
ạ ượ
ỉ ẫ
ởhttp://download.oracle.com/javase/6/docs/api/java/lang/String.html.
Ph
ng th c đ u tiên mà ta xét đ n là
ươ
ứ ầ
ế
charAt; ph
ng th c này cho phép b n k t xu t nh ng ch cái t
ươ
ứ
ạ
ế
ấ
ữ
ữ
ừ
m t
ộ String. char là ki u bi n dùng đ c đ l u tr t ng kí t riêng l (trái ng c l i v i m t chu i các
ể
ế
ượ ể ư
ữ ừ
ự
ẻ
ượ ạ ớ
ộ
ỗ
kí t ).
ự
char cũng ho t đ ng nh các ki u d li u khác ta đã g p:
ạ ộ
ư
ể
ữ ệ
ặ
char
ltr =
'c'
;
if
(ltr ==
'c'
) {
System.out.println(ltr);
}
Nh ng giá tr c a kí t đ u xu t hi n trong c p d u nháy đ n, nh
ữ
ị ủ
ự ề
ấ
ệ
ặ
ấ
ơ
ư ’c’. Khác v i giá tr c a chu i (xu t
ớ
ị ủ
ỗ
ấ
hi n gi a c p d u nháy kép), các giá tr kí t ch có th ch a m t ch cái ho c m t kí hi u.
ệ
ữ ặ
ấ
ị
ự ỉ
ể ứ
ộ
ữ
ặ
ộ
ệ
Sau đây là cách dùng ph
ng th c
ươ
ứ charAt:
String fruit =
"banana"
;
char
letter = fruit.charAt(1);
System.out.println(letter);
fruit.charAt() có nghĩa r ng tôi đang kích ho t ph
ng th c
ằ
ạ
ươ
ứ charAt lên đ i t ng có tên
ố ượ
fruit. Tôi đang
truy n đ i s
ề
ố ố 1 vào ph ng th c này, t c là tôi đang mu n bi t ch cái đ u tiên c a chu i là gì. K t qu
ươ
ứ
ứ
ố
ế
ữ
ầ
ủ
ỗ
ế
ả
là m t kí t , và đ
c l u vào trong m t
ộ
ự
ượ ư
ộ char có tên letter. Khi tôi in ra giá tr c a
ị ủ letter, tôi b b t ng :
ị ấ
ờ
a
a không ph i là ch cái đ u tiên c a
ả
ữ
ầ
ủ "banana". Tr khi b n nghiên c u khoa h c máy tính. Vì nh ng lí
ừ
ạ
ứ
ọ
ữ
do kĩ thu t mà gi i khoa h c máy tính đ u đ m t s không. Ch cái th 0 c a
ậ
ớ
ọ
ề
ế
ừ ố
ữ
ứ
ủ "banana" là chữ b. Ch
ữ
cái th 1 là
ứ
a và th 2 là
ứ
n.
N u b n mu n bi t ch cái th 0 c a m t chu i, b n ph i truy n tham s là 0:
ế
ạ
ố
ế
ữ
ứ
ủ
ộ
ỗ
ạ
ả
ề
ố
char
letter = fruit.charAt(0);
8.2 Length
Ph
ng th c ti p theo đ i v i
ươ
ứ
ế
ố ớ String mà ta xét đ n là
ế
length, v n tr l i s kí t có trong chu i. Ch ng
ố
ả ạ ố
ự
ỗ
ẳ
h n:
ạ
int
length = fruit.length();