Xin chào tất cả các bạn, trong quá trình học Java mình chắc chắn là nhiều lúc các bạn không biết một số từ khóa đặc biệt dùng để làm gì đúng không nào?
Và “continue” có lẽ cũng là một trong số đó.
Lúc mới bắt đầu học Java mình cũng có nhiều thắc mắc với các từ khóa và không biết đọc hướng dẫn, giải thích ở đâu cho dễ hiểu, vậy nên, để bạn không gặp phải vấn đề như mình...
Hôm nay, chúng ta sẽ cùng nhau tìm hiểu về từ khóa continue trong Java về cả khái niệm lẫn cách dùng của nó theo cách đơn giản nhất.
Continue trong Java
1. Từ khóa continue trong Java có tác dụng gì?
Từ khóa “continue” là một từ khóa thường được sử dụng trong Java và hầu hết các ngôn ngữ lập trình khác.
Từ khóa này thường được sử dụng trong vòng lặp, khi từ khóa này được thực thi, nó sẽ bỏ qua đoạn code sau nó và bắt đầu một chu kỳ mới của vòng lặp.
Ta có sơ đồ dưới đây mô tả cách mà từ khóa “continue” hoạt động khi được sử dụng trong chương trình Java.
Ví dụ sơ đồ dòng chảy chương trình sử dụng từ khóa continue trong Java
Như ta thấy ở trên, khi có sự xuất hiện của “continue” thì các lệnh phía sau sẽ không được thực thi mà sẽ quay lại kiểm tra tiếp điều kiện của vòng lặp, tức là bắt đầu một chu trình lặp mới.
Vậy là chúng ta đã xong lý thuyết về từ khóa “continue”, giờ thì vào ví dụ thôi nào.
> NOTE: Nếu bạn đang muốn học Java thật bài bản từ cơ bản đến nâng cao và đi làm được thì tham khảo ngay KHÓA HỌC JAVA tại NIIT - ICT Hà Nội nhé.
2. Hướng dẫn sử dụng từ khóa continue trong java qua ví dụ đơn giản.
Để hiểu rõ cách hoạt động của từ khóa continue trong Java, hãy cùng mình thử làm một vài ví dụ đơn giản.
class Main {
public static void main(String[] args)
{
int[] arr = {5, 10, 15, 1, 3, -1, 18, 20, 70, -15};
for (int i = 0; i < 10; i++)
{
if (arr[i] < 0)
continue;
System.out.print(arr[i] + " ");
}
}
}
Kết quả của ví dụ này sẽ là:
5 10 15 1 3 18 20 70
Như bạn thấy, khi phần tử nhỏ hơn không, ta thực hiện câu lệnh continue;
Khi đó, câu lệnh System.out.print(arr[i] + "");
không được thực thi và vòng lặp chuyển sang đánh giá phần tử tiếp theo.
Có thể hiểu đơn giản, từ khóa continue đã làm vòng lặp bỏ qua tất cả những câu lệnh bên dưới và chuyển sang lần lặp tiếp theo.
Tiếp đến, chúng ta sẽ thử sử dụng continue trong vòng lặp lồng nhau
class Main
{
public static void main(String[] args)
{
int[][] arr = new int[10][10];
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
arr[i][j] = 0;
}
}
System.out.println("Ban đầu:");
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
System.out.print(arr[i][j]+" ");
}
System.out.println("");
}
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
if (i == 5)
continue;
arr[i][j] = 1;
}
System.out.println("i = " + i);
}
System.out.println("Sau đó:");
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
System.out.print(arr[i][j]+" ");
}
System.out.println("");
}
}
}
Ta sẽ có kết quả là:
Ban đầu:
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
i = 0
i = 1
i = 2
i = 3
i = 4
i = 5
i = 6
i = 7
i = 8
i = 9
Sau đó:
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
Ta có thể thấy tại vị trí mà i == 5
( tức là vòng lặp lần thứ 6 ) thì giá trị nó không bị thay đổi tức là dòng lệnh arr[i][j] = 1;
không được thực thi mà bỏ qua và bắt đầu một vòng lặp với j
mới.
Với vòng lặp i
thì vẫn được thực thi đầy đủ, tức là lệnh continue lúc này chỉ có tác dụng với vòng lặp j
.
Tuy nhiên, vẫn có một cách để ở trong vòng lặp j, mà ta vẫn có thể áp dụng lệnh continue cho vòng lặp i, đó chính là sử dụng nhãn cho vòng lặp.
Ví dụ sử dụng continue trong vòng lặp có gắn nhãn.
Đơn giản là bạn đặt cú pháp như sau:
continue labelA;
Hãy xem ví dụ dưới đây:
class Main
{
public static void main(String[] args)
{
int[][] arr = new int[10][10];
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
arr[i][j] = 0;
}
}
System.out.println("Ban đầu:");
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
System.out.print(arr[i][j]+" ");
}
System.out.println("");
}
nhani: for (int i = 0; i < 10; i++)
{
nhanj: for (int j = 0; j < 10; j++)
{
if (i == 5)
continue nhani;
arr[i][j] = 1;
}
System.out.println("i = " + i);
}
System.out.println("Sau đó:");
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
System.out.print(arr[i][j]+" ");
}
System.out.println("");
}
}
}
Ta sẽ có đầu ra là:
Ban đầu:
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
i = 1
i = 2
i = 3
i = 4
i = 6
i = 7
i = 8
i = 9
Sau đó:
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
Ta có thể thấy, lần này tại i == 5
thì i
không được in ra, chứng tỏ lệnh continue đã được thực thi trên vòng lặp i
(Mặc dù lệnh được đặt trong vòng lặp j
)
Kết bài
Vậy là chúng ta đã cùng nhau tìm hiểu về từ khóa continue trong Java, chúng ta đã hiểu về khái niệm cũng như cách sử dụng nó qua một số ví dụ điển hình.
Các bạn thấy thế nào? Từ khóa này không khó để hiểu đúng không nào?
Đây là một từ khóa rất quan trọng trong Java mà các bạn sẽ phải sử dụng trong suốt cuộc đời lập trình viên của mình.
Giờ thì bài viết kết thúc rồi, hẹn gặp lại các bạn trong bài viết tới. Đừng quên học java, luyện tập Java mỗi ngày một chút nhé.
“Đi đi, chậm cũng được, miễn là đừng dừng lại”.
> Đọc thêm: 20 Bài tập Java cơ bản (Có đáp án)
---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Dạy học Lập trình chất lượng cao (Since 2002). Học làm Lập trình viên. Hành động ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0914939543 - 0353655150
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
#niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp #java #php #python