Chương 7: Vòng lặp
7.3) Bên trong vòng lặp
*) sử dụng { } để bao vòng lặp
Thông thường ta thường giới hạn các câu lệnh trong vòng lặp thành một khối (block) bới {} trong Java nhưng với những vòng lặp mà số câu lệnh là một ta có thể bỏ {} đi và viết cách ra một chút để nhìn chương trình dễ đọc
Ví dụ ta quay lại bài toán nhập mảng 1 chiều rồi in dữ liệu vừa nhập ra màn hình :
import java.util.Scanner;
public class Class1 {
public static void main(String arg[]) { Scanner nhap=new Scanner(System.in);
int[] anArray = new int[5];
/* nhap vao mang 5 so nguyen ta thuong dung vong lap for */
for (int i = 0; i < 5; i++){
System.out.print("a["+(i+1)+"]= "); anArray[i] = nhap.nextInt();
}
/* in ra man hinh gia tri mang vua nhap */
for (int i = 0; i < 5; i++)
System.out.println("a["+(i+1)+"]= "+anArray[i]);
}} }
Ở vòng lặp thứ nhất, ta thấy trong vòng lặp có hai câu lệnh nên ta cần nhóm vào một {}, còn ở còng lặp thứ hai chỉ có một câu lệnh ta không cần dùng {} để làm cho chương trình dễ đọc hơn
*) Chúng ta nên tránh những vòng lặp trống
Những vòng lặp trống thường là những vòng lặp mà bên trong vòng lặp không làm gì cả, vòng lặp trống có thể là vòng lặp mà lệnh cần làm ta đã đặt trong biểu thức điều kiên, ví dụ như chương trình sau
public class Class1 {
public static void main(String arg[]) {
Scanner nhap = new Scanner(System.in);
int i = 1;
while (i++ < 5) ; System.out.println(i); }
}
chương trình trên khi chạy sẽ cho kết quả i = 6 ta thấy vòng lặp while ở đây không thực hiện gì bên trong vòng lặp biểu thức i++ được thực hiện trong chỗ so sánh điều kiện, điều này khiến cho người đọc đôi khi bị nhầm lẫn, thay vào đó chúng ta nên tách biệt ra kiểm tra điều kiện cho i ở bên ngoài và thực hiện i++ ở bên trong vòng lặp, như vậy chương trình trở lên dễ đọc hơn như sau
public class Class1 {
public static void main(String arg[]) {
int i = 1;
while (i < 5) i++;
System.out.println(i); }
}