Các loại vòng lặp trong Java
Bạn chắc chắn không muốn viết đi, viết lại một đoạn code giống nhau để xử lý một công việc đơn điệu, và thật tế cũng chẳng có ai làm như thế cả. Vòng lặp là một trong những thành phần được sử dụng nhiều nhất để thao tác với dữ liệu hay các công việc lặp đi lặp lại nhiều lần. Trong Java vòng lặp cũng tương tự như các ngôn ngữ khác. Cùng eLib.VN tìm hiểu về các loại vòng lặp trong Java qua bài viết dưới đây.
Mục lục nội dung
1. Vòng lặp while trong Java
While là một vòng lặp thực hiện công việc lặp lại một tác vụ nào đó với điều kiện được cho trước. Cú pháp
while(Bieu_thuc)
{
//Công việc
}
- Biểu thức trong while là một biểu thức trả về giá trị boolean, ví dụ A > 5. Ví dụ:
public class tuandc {
static int a = 10;
public static void main(String[] args) {
int i = 1;
while (a > i){
System.out.println(i);
i++;
}
}
}
Với while, điều kiện sẽ được kiểm tra trước khi vòng lặp được thực hiện. Trong vòng lặp này bạn phải lưu ý kiểm soát tốt giá trị để không xảy ra hiện tượng lặp không có điểm dừng. Ví dụ, nếu mình bỏ đoạn i++; thì vòng lặp sẽ trở thành vòng lặp không có điểm dừng vì điều kiện a > i là luôn luôn đúng.
2. Vòng lặp for trong Java
Vòng lặp for là một loại vòng lặp được dùng nhiều hơn vòng lặp while. Với for thì giá trị của biến tăng được đặt này trong điều kiện vòng lặp nên sẽ khó xảy ra tình trạng vòng lặp không có điểm dừng. Cú pháp:
for(bien_khoi_tao; bieu_thuc; bien_cap_nhat)
{
//Công việc
}
- bien_khoi_tao : là một biến được tạo ra trong vòng lặp để làm điều kiện so sánh trong biểu thức.
- bieu_thuc : là một biểu thức trả về giá trị boolean.
- bien_cap_nhat : là hành động cập nhật giá trị cho biến khởi tạo.
Sau mỗi vòng, bien_cap_nhat sẽ được thực thi, bieu_thuc được kiểm tra lại trước khi công việc được tiếp tục thực hiện. Ví dụ.
public class tuandc {
static int a = 10;
public static void main(String[] args) {
for (int i=0; i<a; i ++)
{
System.out.println(i);
}
}
}
3. Vòng lặp do … while trong Java
Ngược lại so với while và for, thì do...while sẽ cho phép thực hiện ít nhất một lần trước khi kiểm tra điều kiện. Đối với hai vòng lặp trên, công việc có thể sẽ không được thực hiện lần nào, nhưng đối với vòng lặp này nó sẽ ít nhất một lần được thực hiện công việc. Cú pháp:
do
{
// Công việc
}while(Bieu_thuc);
Mình sẽ không giải thích thêm nữa vì mọi thứ đều rất dễ hiểu rồi. Ví dụ như sau:
public class tuandc {
static int a = 10;
public static void main(String[] args) {
do{
System.out.println(a);
a++;
} while(a<10);
}
}
4. Vòng lặp foreach trong Java
foreach là vòng lặp mới trong Java 5. Mặc dù trước đó nó đã được sử dụng trên nhiều loại ngôn ngữ lập trình khác. Nếu bạn làm việc với cơ sở dữ liệu, các mảng thì foreach là một vòng lặp thường xuyên được sử dụng với những kiểu dữ liệu đó, vòng lặp này không cần phải khai báo điều kiện để sử dụng, nó sẽ tự động dừng khi lặp hết giá trị trong biểu thức hoặc mảng. Cú pháp:
for(Khai_bao_bien : Bieu_thuc/Mang)
{
//Công việc
}
Biến được khai báo trong foreach sẽ dùng để lưu trữ từng giá trị lặp được lấy ra trong biểu thức hoặc mảng. Ví dụ:
public class tuandc {
static int a = 10;
public static void main(String[] args) {
int [] nums = {5, 10, 15, 20};
for( int i:nums){
System.out.println(i);
}
}
}
Vòng lặp này vẫn sử dụng từ khóa for, một sự bất tiện không hề nhỏ trong việc lập trình, các ngôn ngữ khác sử dụng từ foreach rất dễ phân biệt, đây là điều mình không thích trong ngôn ngữ Java.
5. Các lệnh điều khiển vòng lặp
Trong quá trình sử dụng vòng lặp, đôi khi chúng ta cần dừng vòng lặp ở một điều kiện nào đó hoặc tiếp tục thì chúng ta cần thêm hai lệnh để điều khiển, đó là break (dừng vòng lặp) và continue (tiếp tục vòng lặp).
Một ví dụ về break:
public class tuandc {
static int a = 10;
public static void main(String[] args) {
int [] nums = {5, 10, 15, 20};
for( int i:nums){
if(i == 10){
break;
}
System.out.println(i);
}
}
}
Continue thì tương tự nhé.
Trên đây là bài viết của eLib.VN về các loại vòng lặp trong Java. Để sử dụng thuần thục các loại vòng lặp này, cần tham khảo bài viết trên và các tài liệu khác. Chúc các bạn thành công!
Tham khảo thêm
- doc Lịch sử và tổng quan về ngôn ngữ Java
- doc Chương trình Java đầu tiên Hello World
- doc Cài đặt môi trường và thiết lập Path trong Java
- doc Cú pháp Java cơ bản
- doc Giới thiệu JDK, JRE và JVM trong Java
- doc Các kiểu biến trong Java
- doc Kiểu dữ liệu trong Java
- doc Toán tử trong Java
- doc Lệnh IF/ELSE, Lệnh SWITCH/CASE trong Java
- doc Đối tượng number trong Java
- doc Đối tượng Character trong Java