THINK JAVA: CÁCH SUY NGHĨ NHƯ NHÀ KHOA HỌC MÁY TÍNH - Trang 71

Ch

ng 8: Chu i kí

ươ

t

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();