Các vòng lặp for trong Java hoạt động như thế nào?

Bạn đã bao giờ quên làm bài tập về nhà và như một hình phạt, bạn được yêu cầu viết “Tôi sẽ làm bài tập về nhà đúng giờ. ” ít nhất 40-50 lần?

Vòng lặp trong lập trình cho phép một tập hợp các hướng dẫn được thực hiện lặp đi lặp lại cho đến khi một điều kiện nhất định được đáp ứng. Vòng lặp còn được gọi là câu lệnh lặp hoặc câu lệnh lặp. Trong bài viết này, chúng ta sẽ tìm hiểu về các vòng lặp khác nhau trong Java

Cần vòng lặp trong Java

Trong khi lập trình, đôi khi xảy ra tình huống chúng ta cần thực thi một đoạn mã nhiều lần. Nói chung, các câu lệnh này thực hiện theo cách tuần tự. Câu lệnh đầu tiên trong hàm thực thi trước, tiếp theo là câu lệnh thứ hai, v.v.

Nhưng điều này làm cho quá trình này trở nên rất phức tạp cũng như kéo dài và do đó tốn nhiều thời gian. Do đó, các ngôn ngữ lập trình cung cấp các cấu trúc điều khiển khác nhau cho phép thực hiện các câu lệnh thực thi phức tạp như vậy

Trước khi chuyển sang các loại vòng lặp, trước tiên chúng ta sẽ thảo luận về cú pháp chung của vòng lặp với sự trợ giúp của các phần tử điều khiển vòng lặp

Vòng lặp Java

Trong Java, có ba loại vòng lặp đó là - vòng lặp for, vòng lặp while và vòng lặp do-while. Tất cả ba cấu trúc vòng lặp này của Java thực thi một tập hợp các câu lệnh lặp lại miễn là một điều kiện cụ thể vẫn đúng

Điều kiện cụ thể này thường được gọi là điều khiển vòng lặp. Đối với cả ba câu lệnh vòng lặp, điều kiện đúng là điều kiện trả về giá trị đúng kiểu boolean và điều kiện sai là điều kiện trả về giá trị sai kiểu boolean

Các phần tử trong vòng lặp Java

Mỗi vòng lặp có các phần tử hoặc biến chi phối việc thực hiện của nó. Nói chung, một vòng lặp có bốn phần tử có các mục đích khác nhau đó là

  • (Các) Biểu thức khởi tạo
  • Biểu thức kiểm tra(Điều kiện)
  • Cập nhật (các) biểu thức
  • Phần thân của vòng lặp

Chúng ta sẽ thảo luận về từng yếu tố trên để hiểu rõ hơn về hoạt động của các vòng lặp

1. (Các) Biểu thức khởi tạo

Trước khi vào một vòng lặp, chúng ta phải khởi tạo biến điều khiển của nó. Việc khởi tạo biến điều khiển diễn ra dưới biểu thức khởi tạo. Nó khởi tạo (các) biến vòng lặp với giá trị đầu tiên của chúng. Biểu thức khởi tạo chỉ được thực hiện một lần ở đầu vòng lặp

2. biểu thức kiểm tra

Biểu thức kiểm tra là một biểu thức có giá trị true (boolean) quyết định thân vòng lặp có được thực thi hay không. Việc thực hiện hay kết thúc vòng lặp phụ thuộc vào biểu thức kiểm tra còn được gọi là điều kiện thoát hoặc điều kiện kiểm tra

Nếu biểu thức kiểm tra cho giá trị true tức là 1 thì thân vòng lặp được thực thi, ngược lại vòng lặp kết thúc

Trong vòng lặp kiểm soát đầu vào, biểu thức kiểm tra được đánh giá trước khi vào vòng lặp trong khi, trong vòng lặp kiểm soát đầu ra, biểu thức kiểm tra được đánh giá trước khi thoát khỏi vòng lặp. Trong Java, vòng lặp for và vòng lặp while là vòng lặp kiểm soát vào và vòng lặp do-while là vòng lặp kiểm soát lối ra

3. Cập nhật (các) biểu thức

(Các) biểu thức cập nhật thay đổi giá trị của các biến vòng lặp. Biểu thức cập nhật được thực hiện ở cuối vòng lặp sau khi thân vòng lặp được thực thi. Ví dụ, một biểu thức cập nhật có thể là câu lệnh tăng hoặc giảm

4. Cơ thể của vòng lặp

Các câu lệnh thực hiện lặp đi lặp lại (miễn là biểu thức kiểm tra khác 0) tạo thành phần thân của vòng lặp. Đoạn mã bên trong thân vòng lặp có được thực thi hay không phụ thuộc vào giá trị của biểu thức kiểm tra

Nếu giá trị được đánh giá là true thì thân vòng lặp sẽ được thực thi lặp lại, nếu không, nó sẽ bị chấm dứt

Sơ đồ sau giải thích cấu trúc Lặp lại hoặc vòng lặp

Các vòng lặp for trong Java hoạt động như thế nào?

Các loại vòng lặp trong Java

1. vòng lặp for

Vòng lặp for trong Java là một vòng lặp được kiểm soát mục nhập cho phép người dùng thực hiện lặp đi lặp lại một khối câu lệnh với số lần cố định trên cơ sở biểu thức kiểm tra hoặc điều kiện kiểm tra. Đây là vòng lặp Java dễ hiểu nhất

Tất cả các phần tử điều khiển vòng lặp của nó được tập hợp tại một nơi, trên đầu vòng lặp trong dấu ngoặc tròn (), trong khi ở các cấu trúc vòng lặp khác của Java, các phần tử vòng lặp nằm rải rác trong chương trình

Cú pháp hoặc dạng chung của vòng lặp for là

for(initialization expression(s) ; test-expression ; update-expression(s))
{
     body of the loop ;
}

Ví dụ

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}

Đoạn mã để minh họa việc sử dụng câu lệnh/vòng lặp for

package com.TechVidvan.loopsDemo;
public class ForLoopDemo
{
  public static void main(String args[])
  {
    int i;
    for(i = 10; i >= 1; i--)
    {
      System.out.println("The value of i is: "+i);
    }
  }
}

đầu ra

Giá trị của i là. 10
Giá trị của i là. 9
Giá trị của i là. 8
Giá trị của i là. 7
Giá trị của i là. 6
Giá trị của i là. 5
Giá trị của i là. 4
Giá trị của i là. 3
Giá trị của i là. 2
Giá trị của i là. 1

Hình dưới đây mô tả hoạt động của vòng lặp for

 

Các vòng lặp for trong Java hoạt động như thế nào?

Bây giờ bạn đã quen với hoạt động của vòng lặp for, hãy lấy một ví dụ khác trong đó có nhiều câu lệnh trong thân vòng lặp

Mã số

package com.TechVidvan.loopsDemo;

public class ForLoopDemo
{
  public static void main(String args[])
  {
    int i,sum;
    for(i = 1 , sum = 0; i <= 10; ++i)
    {
      System.out.println("The value of i is: "+i) ;
      sum = sum + i;
    }
    System.out.println("The sum of first 10 numbers is: " +sum) ;
  }
}

đầu ra

Giá trị của i là. 1
Giá trị của i là. 2
Giá trị của i là. 3
Giá trị của i là. 4
Giá trị của i là. 5
Giá trị của i là. 6
Giá trị của i là. 7
Giá trị của i là. 8
Giá trị của i là. 9
Giá trị của i là. 10
Tổng của 10 số đầu tiên là. 55

Trong chương trình trên có 2 biểu thức khởi tạo. i = 1 và sum = 0 cách nhau bởi dấu phẩy. Phần khởi tạo có thể chứa bao nhiêu biểu thức nhưng các biểu thức này phải được phân tách bằng dấu phẩy. Phần khởi tạo phải được theo sau bởi dấu chấm phẩy (;). Cả hai biến i và sum lần lượt nhận các giá trị đầu tiên là 1 và 0

Mẹo. Sử dụng vòng lặp for khi bạn phải lặp lại một khối câu lệnh với số lần cụ thể

Các biến thể của vòng lặp for

Java cung cấp một số biến thể trong vòng lặp làm tăng tính linh hoạt và khả năng ứng dụng của vòng lặp for. Các biến thể khác nhau của vòng lặp for được thảo luận bên dưới

1. 1. Nhiều khởi tạo và cập nhật biểu thức

Một vòng lặp for có thể chứa nhiều biểu thức khởi tạo và/hoặc cập nhật. Nhiều biểu thức này phải được phân tách bằng dấu phẩy. Chúng ta đã thấy một ví dụ về nhiều biểu thức khởi tạo trong chương trình trước

Vòng lặp for của chương trình đó có thể được viết cách khác như sau

for( i = 1, sum = 0 ; i <= 10 ; sum +=i, ++i )
System.out.println(i);

Đoạn mã trên chứa hai biểu thức khởi tạo i = 1 và sum = 0 và hai biểu thức cập nhật sum += i và ++i. Nhiều biểu thức này được thực hiện theo trình tự

Mẹo. Toán tử dấu phẩy trong vòng lặp for rất cần thiết bất cứ khi nào chúng ta cần nhiều hơn một chỉ mục

1. 2. biểu thức tùy chọn

Trong vòng lặp for, các biểu thức khởi tạo, biểu thức kiểm tra và biểu thức cập nhật là tùy chọn, nghĩa là bạn có thể bỏ qua bất kỳ hoặc tất cả các biểu thức này

Ví dụ: giả sử bạn đã khởi tạo các biến vòng lặp và bạn muốn loại bỏ biểu thức khởi tạo thì bạn có thể viết vòng lặp for như sau

for( ; biểu thức kiểm tra ; (các) biểu thức cập nhật)
thân vòng lặp

Thấy chưa, ngay cả khi bạn bỏ qua biểu thức khởi tạo, dấu chấm phẩy (;) phải ở sau nó

Đoạn mã sau minh họa khái niệm trên

package com.TechVidvan.loopsDemo;

public class ForLoopDemo
{
  public static void main(String args[])
  {
    int i = 1, sum = 0 ;
    for( ; i <= 10 ; sum +=i, ++i )
      System.out.println(i);
    System.out.println("The sum of first 10 numbers is: " +sum) ;
  }
}

đầu ra

1
2
3
4
5
6
7
8
9
10
The sum of first 10 numbers is: 55

Tương tự, chúng ta cũng có thể bỏ qua hoặc lược bỏ các biểu thức kiểm tra và biểu thức cập nhật

Ví dụ,

for( j = 0 ; j != 224 ; )
j += 11 ;

Nếu biến j đã được khởi tạo, thì chúng ta có thể viết vòng lặp trên dưới dạng,

for( ; j != 224 ; )
j += 11;

Mẹo. Các biểu thức điều khiển vòng lặp trong câu lệnh vòng lặp for là tùy chọn, nhưng dấu chấm phẩy phải được viết

1. 3. Vòng lặp vô hạn

Một vòng lặp vô hạn có thể được tạo bằng cách bỏ qua biểu thức kiểm tra như hình bên dưới

________số 8

đầu ra

Đây là một vòng lặp vô tận…

Tương tự, chúng ta cũng có thể bỏ qua cả ba biểu thức để tạo vòng lặp vô hạn

for( ; ; ; )
loop body

1. 4. Vòng lặp trống

Khi không có câu lệnh nào trong thân vòng lặp của vòng lặp, thì nó được gọi là vòng lặp rỗng. Trong những trường hợp như vậy, một vòng lặp Java chứa một câu lệnh trống, tức là một câu lệnh null. Sau vòng lặp for là một ví dụ về vòng lặp rỗng

cho( j = 20 ; j >=0 ; j– ) ;

Một vòng lặp for trống có các ứng dụng của nó trong vòng lặp trễ thời gian, nơi bạn cần tăng hoặc giảm giá trị của một số biến mà không cần làm gì khác, chỉ để giới thiệu một số độ trễ

1. 5. Khai báo biến bên trong vòng lặp

Khi chúng ta khai báo bất kỳ biến nào bên trong vòng lặp for, chúng ta không thể truy cập vào biến đó sau khi câu lệnh lặp kết thúc. Lý do là khi biến được khai báo trong một khối câu lệnh, phạm vi của nó trở thành phần thân của vòng lặp. Do đó, chúng ta không thể truy cập nó bên ngoài thân vòng lặp

Đoạn mã sau giải thích khái niệm này

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
0

đầu ra

Ngoại lệ trong luồng java “chính”. lang thang. Lỗi. Sự cố biên dịch chưa được giải quyết.
x không thể được phân giải thành một biến
tại project1/com. TechVidvan. vòng lặpDemo. ForLoopDemo. chính (ForLoopDemo. java. 11)

Trong chương trình trên, câu lệnh System. ngoài. println(x); . Một biến không thể truy cập bên ngoài phạm vi của nó, đó là lý do tại sao có lỗi

2. Vòng lặp while

Vòng lặp tiếp theo có sẵn trong Java là vòng lặp while. Vòng lặp while là vòng lặp kiểm soát mục nhập

Cú pháp hoặc hình thức chung của vòng lặp while là

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
1

Trong vòng lặp while, thân vòng lặp có thể chứa câu lệnh đơn, câu lệnh ghép hoặc câu lệnh rỗng. Vòng lặp lặp lại trong khi biểu thức kiểm tra hoặc điều kiện đánh giá là đúng. Khi biểu thức trở thành sai, điều khiển chương trình chuyển đến dòng ngay sau khi kết thúc mã thân vòng lặp

Trong vòng lặp while, một biến vòng lặp phải được khởi tạo trước khi vòng lặp bắt đầu. Và biến vòng lặp phải được cập nhật bên trong thân của vòng lặp while

Mã sau đây cho thấy hoạt động của vòng lặp while

Đoạn mã để minh họa vòng lặp while

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
2

đầu ra

Giai thừa của 5 là. 120

Trong đoạn mã trên, miễn là giá trị của num khác 0, thân vòng lặp sẽ được lặp lại, nghĩa là biến. Mỗi khi giá trị của fact được cập nhật khi nó được nhân với num, thì thao tác tiếp theo là giảm giá trị của num.

Và sau đó, một lần nữa biểu thức kiểm tra (num) được thực thi. Nếu sai thì vòng lặp kết thúc, nếu không thì lặp lại

Hình dưới đây mô tả hoạt động của vòng lặp while

Các vòng lặp for trong Java hoạt động như thế nào?

Các biến thể của vòng lặp while

Vòng lặp while cũng có một số biến thể. Chúng ta sẽ thảo luận về từng biến thể này

2. 1. Làm trống trong khi Vòng lặp

Một vòng lặp while trống không chứa bất kỳ câu lệnh nào trong phần thân của nó. Nó chỉ chứa một câu lệnh null được biểu thị bằng dấu chấm phẩy sau câu lệnh while

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
3

Đoạn mã trên là một vòng lặp trễ thời gian. Vòng lặp thời gian trễ rất hữu ích để tạm dừng chương trình trong một thời gian. Chẳng hạn, nếu một thông báo quan trọng nhấp nháy trên màn hình và bạn chưa kịp đọc thì thông báo đã tắt

Vì vậy, ở đây bạn có thể giới thiệu một vòng lặp trễ thời gian để bạn có đủ thời gian đọc tin nhắn

2. 2. Vòng lặp vô hạn

Một vòng lặp while có thể là một vòng lặp vô hạn nếu bạn bỏ qua việc viết câu lệnh cập nhật bên trong phần thân của nó. Ví dụ: đoạn mã sau là một ví dụ về vòng lặp while vô hạn

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
4

đầu ra

0
0 …

Vòng lặp trên là một vòng lặp vô hạn vì câu lệnh tăng dần j++ không được bao gồm trong phần thân của vòng lặp. Giá trị của j vẫn giữ nguyên (nghĩa là 0) và vòng lặp không bao giờ có thể kết thúc

Chúng ta cũng có thể viết giá trị boolean true bên trong câu lệnh while để tạo vòng lặp while vô hạn. Vì điều kiện sẽ luôn đúng nên thân vòng lặp sẽ được thực thi vô hạn. Nó được hiển thị dưới đây

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
5

3. Vòng lặp do-while

Không giống như các vòng lặp for và while, vòng lặp do-while là một vòng lặp được kiểm soát lối ra, nghĩa là vòng lặp do-while đánh giá biểu thức kiểm tra hoặc điều kiện kiểm tra của nó ở cuối vòng lặp sau khi thực hiện các câu lệnh trong thân vòng lặp

Điều này có nghĩa là vòng lặp do-while luôn thực hiện ít nhất một lần

Cần vòng lặp do-while

Trong vòng lặp for và while, điều kiện được đánh giá trước khi thực hiện thân vòng lặp. Phần thân vòng lặp không bao giờ thực thi nếu biểu thức kiểm tra đánh giá sai lần đầu tiên

Nhưng trong một số trường hợp, chúng tôi muốn thân vòng lặp thực thi ít nhất một lần, bất kể trạng thái ban đầu của biểu thức kiểm tra là gì. Trong những trường hợp như vậy, vòng lặp do-while là lựa chọn tốt nhất

Cú pháp hoặc hình thức chung của vòng lặp do-while là

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
6

Dấu ngoặc nhọn { } không cần thiết khi thân vòng lặp chứa một câu lệnh

Đoạn mã sau minh họa hoạt động của vòng lặp do-while

Đoạn mã để minh họa vòng lặp do-while

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
7

đầu ra

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Đoạn mã trên in các ký tự từ ‘A’ trở đi cho đến khi điều kiện ch<= ‘Z’ trở thành sai

Hình dưới đây mô tả hoạt động của vòng lặp do-while

Các vòng lặp for trong Java hoạt động như thế nào?

Vòng lặp‌ ‌do-while‌‌ ‌‌‌được sử dụng phổ biến nhất‌trong‌‌các‌hệ thống‌menu‌‌chọn‌‌‌‌‌‌‌‌‌trong‌‌‌‌‌‌‌‌‌‌‌‌‌‌the‌menu‌selection‌,‌ ‌‌ mà người dùng có thể xem menu ít nhất một lần. ‌Sau đó, tùy theo phản hồi của người dùng, nó được lặp lại hoặc bị chấm dứt. ‌ ‌

Vòng lặp lồng nhau trong Java

Khi một vòng lặp chứa một vòng lặp khác trong phần thân của nó thì nó được gọi là vòng lặp lồng nhau. Nhưng trong một vòng lặp lồng nhau, vòng lặp bên trong phải kết thúc trước vòng lặp bên ngoài. Sau đây là một ví dụ về vòng lặp for lồng nhau

Mã để minh họa cho vòng lặp lồng nhau

int x = 0;
for( x = 1 ; x <= 10 ; x++ )
{
  System.out.println(Value of x: “ +x);
}
8

đầu ra

*
* *
* * *
* * * *
* * * * *

Tóm lược

Vòng lặp trong Java giúp lập trình viên tiết kiệm thời gian và công sức. Việc lặp lại các câu lệnh gây ra sự chậm trễ về thời gian. Vì vậy, vòng lặp giúp chúng ta thực hiện các tác vụ một cách dễ dàng và hiệu quả. Trong bài viết này, chúng tôi đã thảo luận về ba loại vòng lặp. vòng lặp for, while và do-while

Chúng tôi đã trình bày chúng với sự trợ giúp của các ví dụ và đoạn mã để bạn có thể hiểu rõ hơn về chúng. Ngoài ra, chúng ta đã thảo luận về các biến thể và trường hợp đặc biệt trong vòng lặp for và while. Chúng tôi cũng đã đề cập đến các khái niệm về vòng lặp lồng nhau trong bài viết

Cảm ơn bạn đã đọc bài viết của chúng tôi. Tôi hy vọng bài viết này sẽ giúp bạn củng cố các khái niệm của mình trong các vòng lặp Java

Vòng lặp for hoạt động như thế nào?

Vòng lặp "For" được dùng để lặp lại một khối mã cụ thể với số lần đã biết . Ví dụ muốn kiểm tra điểm từng học sinh trong lớp ta lặp từ 1 đến số đó. Khi không biết trước số lần, chúng ta sử dụng vòng lặp "While".

Làm thế nào để vòng lặp hoạt động từng bước?

Vòng lặp for hoạt động như thế nào? .
Câu lệnh khởi tạo chỉ được thực hiện một lần
Sau đó, biểu thức kiểm tra được đánh giá. .
Tuy nhiên, nếu biểu thức kiểm tra được đánh giá là true, các câu lệnh bên trong phần thân của vòng lặp for sẽ được thực thi và biểu thức cập nhật được cập nhật
Một lần nữa biểu thức kiểm tra được đánh giá

Làm cách nào để thực thi vòng lặp for trong Java?

Java cho vòng lặp .
initExpression khởi tạo và/hoặc khai báo các biến và chỉ thực hiện một lần
Điều kiện được đánh giá. Nếu điều kiện đúng thì phần thân của vòng lặp for được thực thi
updateExpression cập nhật giá trị của initialExpression
Điều kiện được đánh giá lại

3 phần của một vòng lặp for là gì?

Tương tự như vòng lặp While, vòng lặp For bao gồm ba phần. từ khóa For bắt đầu vòng lặp, điều kiện đang được kiểm tra và từ khóa EndFor kết thúc vòng lặp .