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

ch s :

ỉ ố

M t bi n hay giá tr đ c dùng đ ch n m t trong các thành viên (ph n t ) c a m t t p h p đ c x p

ế

ị ượ

ể ọ

ầ ử ủ

ộ ậ

ượ ế

th t , nh ch n kí t t m t chu i.

ứ ự

ư ọ

ự ừ ộ

bi t l :

ệ ệ

M t l i khi th c thi ch ng trình.

ộ ỗ

ươ

phát:
Gây nên m t bi t l .

ệ ệ

l n v t ngăn x p:

ế

ế

M t b n báo cáo cho th y tr ng thái ch ng trình khi có bi t l x y ra.occurs.

ộ ả

ươ

ệ ệ ả

nguyên m u:

Dòng đ u tiên c a m t ph ng th c, trong đó quy đ nh tên, các tham s và ki u tr l i.

ươ

ả ạ

duy t:

Vi c l p qua t t c m i ph n t c a m t t p h p nh m th c hi n m t công vi c t ng t đ i v i t ng

ệ ặ

ấ ả ọ

ầ ử ủ

ộ ậ

ệ ươ

ự ố ớ ừ

ph n t .

ầ ử

bi n đ m:

ế

ế

M t bi n dùng đ đ m th gì đó; bi n này th

ng đ c kh i t o b ng không sau đó tăng thêm.

ế

ể ế

ế

ườ

ượ

ở ạ

tăng:

Vi c tăng giá tr c a bi n thêm m t đ n v . Toán t tăng trong Java là

ị ủ

ế

ộ ơ

++.

gi m:

Vi c gi m giá tr c a bi n thêm đi đ n v . Toán t gi m trong Java là

ị ủ

ế

ơ

ử ả

--.

8.12 Bài t p

Bài t p 1

Hãy vi t m t ph

ng th c nh n vào m t

ế

ươ

ộ String làm đ i s r i in t t c các ch cái theo

ố ố ồ

ấ ả

chi u ng

c l i trên cùng m t dòng.

ượ ạ

Bài t p 2

Hãy đ c

ọ n i dung l n v t ngăn x p M c

ế

ế ở ụ 8.4 r i tr l i nh ng câu h i sau:

ả ờ

Nh ng lo i bi t l nào đã x y ra, và nh ng bi t l này đ

c đ nh nghĩa trong các gói (package) nào?

ệ ệ

ệ ệ

ượ ị

Giá tr nào c a ch s gây nên bi t l ?

ỉ ố

ệ ệ

Ph

ng th c nào phát ra bi t l , và ph

ng th c đó đ

c đ nh nghĩa đâu?

ươ

ệ ệ

ươ

ượ ị

Ph

ng th c nào kích ho t

ươ

ạ charAt?

Trong BadString.java, charAt đ

c kích ho t t i dòng s m y?

ượ

ạ ạ

ố ấ

Bài t p 3

Hãy bao b c đo n mã M c

ở ụ 8.7 vào m t ph ng th c có tên

ươ

countLetters, sau đó khái quát

hoá sao cho nó ch p nh n các đ i s là chu i và ch cái c n đ m. Ti p theo, vi t l i ph

ng th c sao

ố ố

ế

ế

ế ạ

ươ

cho nó s d ng

ử ụ indexOf đ đ nh v các ch a, thay vì ki m tra t ng ch cái m t.

ể ị

Bài t p 4

M c đích c a bài t p này là ôn l i phép bao b c và khái quát hoá.

1.

Hãy bao b c đo n mã l nh sau, chuy n đ i nó thành m t ph

ng th c nh n vào đ i s là m t String

ươ

ố ố

r i tr l i giá tr cu i cùng c a

ồ ả ạ

ị ố

ủ count.

2. Mô t ng n g n công d ng c a ph

ng th c v a l p nên (mà không đi vào chi ti t các b

c th c hi n

ươ

ứ ừ ậ

ế

ướ

nh th nào).

ư ế

3. Bây gi khi b n đã khái quát hoá đ mã l nh ho t đ ng đ

c v i chu i b t kì r i, b n còn có th khái

ạ ộ

ượ ớ

ỗ ấ

quát hoá theo cách nào n a?

String s =

"((3 + 7) * 2)"

;

int

len = s.length();

int

i = 0;