Kỹ thuật lập trình Java căn bản - Chương 3: Nền tảng của ngôn ngữ Java

Mục tiêu của bài:

Kết thúc chương này bạn có thể:

 Đọc hiểu một chương trình viết bằng Java

 Nắm bắt những khái niệm cơ bản về ngôn ngữ Java

 Nhận dạng các kiểu dữ liệu

 Nhận dạng các toán tử

 Định dạng xuất dữ liệu (output) sử dụng các chuỗi thoát (escape

sequence)

 Nhận biết các cấu trúc lập trình cơ bản

pdf34 trang | Chuyên mục: Java | Chia sẻ: dkS00TYs | Lượt xem: 3162 | Lượt tải: 3download
Tóm tắt nội dung Kỹ thuật lập trình Java căn bản - Chương 3: Nền tảng của ngôn ngữ Java, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
ence) 
Nhiều khi dữ liệu xuất được hiển thị trên màn hình,chúng cần phải được định 
dạng.Việc định dạng này cần sự trợ giúp của chuỗi thoát (Escape sequences) 
do Java cung cấp 
Chúng ta hãy xem ví dụ dưới đây 
System.out.println(“Happy\tBirthday”); 
Cho ta dữ liệu xuất như sau : Happy Birthday 
Bảng dưới đây liệt kê một số chỗi thoát và công dụng của chúng 
Chuỗi thoát Mô tả 
\n Đưa con trỏ đến dòng kế tiếp (Bắt đầu một dòng mới ) 
\r Đưa con trở về đầu dòng (Giống ký tự carriage return) 
\t Đưa con trỏ đến vị trí Tab-Stop (Như vị trí Tab cuả ký tự) 
\\ In vạch chéo ngược (backslash) 
\‟ In dấu nháy đơn („) 
\” In dấu nháy kép (“) 
Bảng 3.10 Các chuỗi thoát 
3.10 Điều khiển luồng 
Tất cả các môi trường phát triển ứng dụng đều cung cấp một quy trình ra 
quyết định (decision-making) được gọi là điều khiển luồng, nó điều khiển việc 
thực thi ứng dụng. Điều khiển luồng cho phép người phát triển phần mềm 
kiểm tra sự tồn tại của một điều kiện nào đó và ra quyết định phù hợp với 
điều kiện đó. 
Vòng lặp là một cấu trúc chương trình giúp bạn có thể dùng để thực hiện việc 
lặp lại các hành động khi thực thi chương trình mà không cần viết lại các 
đoạn chương trình nhiều lần. 
Điều khiển rẽ nhánh 
 Mệnh đề if-else 
 Mệnh đề swich-case 
Vòng lặp (Loops) 
 Vòng lặp while 
 Vòng lặp do-while 
 Vòng lặp for 
Chương 3: Nền Tảng Của Ngôn Ngữ Java 59 
3.10.1 Câu lệnh if-else 
Câu lệnh if-else kiểm tra kết quả của một điều kiện và thực thi một thao tác 
phù hợp trên cơ sở kết quả đó. Dạng của câu lệnh if-elsse rất đơn giản 
Cú pháp 
If (conditon) 
{ action 1 statements; } 
else 
{ action 2 statements; } 
Condition: Biểu thức Boolean như toán tử so sánh. Biểu thức này trả về giá 
trị True hoặc False 
action 1: Các dòng lệnh được thực thi khi giá trị trả về là True 
else: Từ khoá xác định các câu lệnh tiếp sau được thực hiện nếu điều kiện 
trả về giá trị False 
action 2: Các câu lệnh được thực thi nếu điều kiện trả về giá trị False 
Đoạn chương trình sau kiểm tra xem các số là chẵn hay lẻ và hiển thị thông 
báo phù hợp 
Chương trình 3.7 
class CheckNumber 
{ 
public static void main(String args[] 
{ 
int num =10; 
if(num %2 == 0) 
System.out.println (num+ “is an even number”); 
else 
System.out.println (num +”is an odd number”); 
}} 
60 Core Java 
Ở đoạn chương trình trên num được gán giá trị nguyên là 10. Trong câu lệnh 
if-else điều kiện num %2 trả về giá trị 0 và điều kiện thực hiện là True. 
Thông báo “10 is an even number” được in ra. Lưu ý rằng cho đến giờ chỉ có 
một câu lệnh tác động được viết trong đoạn “if” và “else”, bởi vậy không cần 
phải được đưa vào dấu ngoặc móc. 
Hình vẽ dưới đây mô tả cách dùng if-else 
Tên 
 if 
Tom Else-if John 
else 
Henry 
Điều kiện Giám đốc > 3 năm 
kinh nghiệm 
Tăng lương    
Hình 3.4 If-else 
3.10.2 Câu lệnh switch-case 
Phát biểu switch-case có thể được sử dụng tại câu lệnh if-else. Nó được sử 
dụng trong tình huống một biểu thức cho ra nhiều kết quả. Việc sử dụng câu 
lệnh switch-case cho phép việc lập trình dễ dàng và đơn giản hơn. 
Cú pháp 
swich (expression) 
{ 
case „value‟:action 1 statement; 
break; 
case „value‟:action 2 statement; 
break; 
: 
: 
case „valueN‟: actionN statement; break; 
default: default_action statement; 
} 
expession - Biến chứa một giá trị xác định 
value1,value 2,….valueN: Các giá trị hằng số phù hợp với giá trị trên biến 
expression . 
Chương 3: Nền Tảng Của Ngôn Ngữ Java 61 
action1,action2…actionN: Các phát biểu được thực thi khi một trường hợp 
tương ứng có giá trị True 
break: Từ khoá được sử dụng để bỏ qua tất cả các câu lệnh sau đó và giành 
quyền điều khiển cho cấu trúc bên ngoài switch 
default: Từ khóa tuỳ chọn được sử dụng để chỉ rõ các câu lệnh nào được 
thực hiện chỉ khi tất cả các trường hợp nhận giá trị False 
default - action: Các câu lệnh được thực hiện chỉ khi tất cả các trường hợp 
nhận giá trị False 
Đoạn chương trình sau xác định giá trị trong một biến nguyên và hiển thị 
ngày trong tuần được thể hiện dưới dạng chuỗi. Để kiểm tra các giá trị nằm 
trong khoảng 0 đến 6 
chương trình sẽ thông báo lỗi nếu nằm ngoài phạm vi trên. 
Chương trình 3.8 
class SwitchDemo 
{ 
public static void main(String agrs[]) 
 { 
int day =4; 
switch(day) 
 { 
case 0 : System.out.println(“Sunday”); 
break; 
case 1 : System.out.println(“Monday”); 
break; 
case 2 : System.out.println(“Tuesday”); 
break; 
case 3 : System.out.println(“Wednesday”); 
break; 
62 Core Java 
case 4 : System.out.println(“Thursday”); 
break; 
case 5: System.out.println(“Friday”); 
break; 
case 6 : System.out.println(“Satuday”); 
break; 
default: System.out.println(“Invalid day of week”); 
 } 
 } 
} 
Nếu giá trị của bíến day là 4 ,chương trình sẽ hiển thị Thursday,và cứ tiếp 
như vậy . 
3.10.3 Vòng lặp While 
Vòng lặp while được sử dụng khi vòng lặp được thực hiện mãi cho đến khi 
điều kiện thực thi vẫn là True. Số lượng lần lặp không đựơc xác định trước 
song nó sẽ phụ thuộc vào từng điều kiện. 
Cú pháp 
while(condition) 
{ 
action statement; 
: 
: 
} 
condition: Biểu thức Boolean, nó trả về giá trị True hoặc False. Vòng lặp sẽ 
tiếp tục cho đến khi nào giá trị True được trả về. 
action statement: Các câu lệnh được thực hiện nếu condition nhận giá trị 
True 
Chương 3: Nền Tảng Của Ngôn Ngữ Java 63 
Đoạn chương trình sau tính giai thừa của số 5.Giai thừa được tính như tích 
5*4*3*2*1. 
Chương trình 3.9 
class WhileDemo 
{ 
public static void main(String args[]) 
{ 
int a = 5,fact = 1; 
while (a >= 1) 
 { 
 fact *=a; 
a--; 
 } 
System.out.println(The Factorial of 5 is “+fact); 
 } 
} 
Ở ví dụ trên, vòng lặp được thực thi cho đến khi điều kiện a>=1 là True. 
Biến a được khai báo bên ngoài vòng lặp và được gán giá trị là 5. Cuối mỗi 
vòng lặp, giá tri của a giảm đi 1. Sau năm vòng giá trị của a bằng 0. Điều 
kiện trả về giá trị False và vòng lặp kết thúc. Kết quả sẽ được hiển thị “ The 
factorial of 5 is 120” 
Đoạn chương trình sau hiển thi tổng của 5 số chẵn đầu tiên 
Chương trình 3.11 
class ForDemo 
{ 
public static void main(String args[]) 
{ 
 int i=1,sum=0; 
64 Core Java 
for (i=1;i<=10;i+=2) 
sum+=i; 
System.out.println (“sum of first five old numbers is “+sum); 
} 
} 
Ở ví dụ trên, i và sum là hai biến được gán các giá trị đầu là 1 và 0 tương 
ứng. Điều kiện được kiểm tra và khi nó còn nhận giá trị True, câu lệnh tác 
động trong vòng lặp được thực hiện. Tiếp theo giá trị của i được tăng lên 2 để 
tạo ra số chẵn tiếp theo. Một lần nữa, điều kiện lại được kiểm tra và câu lệnh 
tác động lại được thực hiện. Sau năm vòng, i tăng lên 11, điều kiện trả về giá 
trị False và vòng lặp kết thúc. Thông báo: Sum of first five odd numbers 
is 25 được hiển thị. 
Chương 3: Nền Tảng Của Ngôn Ngữ Java 65 
Tóm tắt bài học 
 Lệnh import được sử dụng trong chương trình để truy cập các gói thư 
viện Java. 
 Chương trình Java chứa một tập các gói. Chương trình có thể chứa các 
dòng giải thích. Trình biên dịch sẽ bỏ qua các dòng giải thích này. 
 “Token” là thành phần nhỏ nhất của chương trình. Có năm loại “token” 
 Đinh danh (identifiers) 
 Từ khóa (keywords) 
 Ký tự phân cách (separators) 
 Nguyên dạng (Literals) 
 Các toán tử 
 Java có các kiểu dữ liệu xây dựng sẵn gọI là kiểu dữ liệu nguyên thuỷ. 
Các biến được khai báo vớI một dữ liệu xác định. Hãy thận trọng khi 
khai báo tên biến để loại trừ khả năng nhầm lẫn. 
 Java cung cấp các chỉ định truy xuất sau đây : 
 Công cộng (public) 
 Bảo vệ (protected) 
 Riêng tư (private) 
 Java cung cấp các bổ nghĩa (modifiers) sau đây: 
 Tĩnh (static) 
 Trừu tượng (abstract) 
 final 
 Khởi tạo hàm có hai kiểu : 
 Tường minh (Explicit) 
 Ngầm định (Implicit) 
 Java cung cấp nhiều dạng toán tử: 
 Các toán tử số học 
 Các toán tử bit 
 Các toán tử quan hệ 
 Các toán tử logic 
 Toán tử đìều kiện 
 Toán tử gán 
 Ứng dụng Java có một lớp chứa phương thức main. Các tham số có thể 
được truyền vào phương thức main nhờ các tham số lệnh (command 
line parameters). Java cung cấp những cấu trúc sau: 
 if-else 
 switch 
 for 
 while 
 do while 
66 Core Java 
Kiểm tra sự tiến bộ 
1. Trong Java, kiểu dữ liệu dạng byte nằm trong giới hạn 
từ……….đến………… 
2. Hãy chỉ các danh định hợp lệ: 
a. Tel_num 
b. Emp1 
c. 8678 
d. batch.no 
3. Cho biết kết quả thu đươc khi thực hiện đoạn chương trình sau? 
class me 
{ 
public static void main(String srgs[ ]) 
 { 
 int sales=820; 
 int profit=200; 
 System.out.println((sale +profit)/10*5); 
 } 
} 
4. ……….……là sự cài đặt của các hành động của đối tượng 
5. Phương thức public có thể truy cập phương thức private trong 
cùng một lớp. Đúng/Sai 
6. „static‟ hàm ý rằng phương thức không có mã và được bổ sung 
trong các lớp con Đúng/Sai 
Khi bạn không định nghiã một hàm khởi tạo cho một lớp, JVM sẽ 
cung cấp một hàm mặc định hoặc một hàm khởi tạo ẩn 
(implicit). Đúng/Sai 
Vòng lặp while thực thi ít nhất một lần thậm chí nếu điều kiện 
được xác định là False Đúng/Sai 
Bài tập 
1. Hãy viết một đoạn chương trình để in ra dòng chữ ” Welcome to 
the world of Java” 
2. Hãy viết hai phương thức khởi tạo tường minh cho một lớp dùng 
để tính diện tích hình chữ nhật. Khi một giá trị được truyền vào 
phương thức khởi tạo, nó cho rằng độ dài và chiều rộng bằng 
nhau và bằng giá trị truyền vào. Lúc đó, nó sẽ tính diện tích 
tương ứng. Khi hai giá trị được truyền vào, nó sẽ tính diện tích 
hình chữ nhật. 
3. Viết một chương trình thực hiện những việc sau đây: 
a. Khai báo và gán giá trị đầu cho các biến m và n là 100 và 
200 tương ứng. 
b. Theo các điều kiện: nếu m bằng 0, hiển thị kết quả tương 
ứng. 
c. Nếu m lớn hơn n , hiển thị kết quả tương ứng. 
d. Kiểm tra giá trị n là chẵn hay lẻ. 
4. Viết một chương trình hiển thị tổng các bội số của 7 nằm giữa 1 
và 100. 
5. Viết chương trình để cộng bảy số hạng của dãy sau: 
1!+2!+3!……………. 

File đính kèm:

  • pdfKỹ thuật lập trình Java căn bản - Chương 3_Nền tảng của ngôn ngữ Java.pdf
Tài liệu liên quan