[Series Kotlin] Bài 6: Vòng lặp for trong Kotlin
Không chỉ riêng trong Kotlin mà đối với mọi ngôn ngữ lập trình thì cấu trúc vòng lặp là rất quan trọng, đặc biệt là vòng lặp for. Trong bài này chúng ta cùng tìm hiểu cách làm việc với các cách thức làm việc với vòng lặp for nhé.
1.Vòng lặp for với in.
Cú pháp:
1 |
<b>for (i <span style="border: 0px; color: red; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">in</span> a..b) {<br /> Xử lý lặp<br />}</b> |
Với cú pháp trên thì biến bước nhảy i sẽ tự động tăng dần từ a cho tới b.
Ví dụ về vòng lặp for trong Kotlin với tình huống hiển thị dãy số từ 1 đến 100
1 |
<b>for (i <span style="border: 0px; color: red; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">in</span> 1..100) {<br /> print(i + " ")<br />}</b> |
2. Vòng lặp for với until
Cú pháp:
1 |
<b><span style="color: #1d1d1d;">for (i</span><span style="color: red;"> until</span><span style="color: #1d1d1d;"> a..b) {<br /> Xử lý lặp<br />}</span></b> |
Với cú pháp trên thì biến i sẽ tự động tăng từ a cho tới gần b.
Ví dụ về vòng lặp for tính tổng từ 1 đến gần số nguyên dương n.
1 |
<b><span>fun </span><span>main(args: Array<String>) {<br /></span><span> var </span><span>sum:Int=</span><span>0<br /></span><span> val </span><span>n:Int=</span><span>5<br /></span><span> for </span><span>(i </span><span><span style="color: red;">in</span> </span><span>1 </span><span style="color: red;">until </span><span>n)<br /> {<br /> sum += i<br /> }</span> <br /><span> println</span><span>(</span><span>"Tổng=</span><span style="color: navy;">$</span><span>sum</span><span>"</span><span>)<br />}</span> </b><span style="color: #1d1d1d; font-size: 14px;"><br /></span> |
Ở ví dụ trên n được gán giá trị bằng 5. Nên biến chạy i sẽ chạy đến 4.
3. Vòng lặp for với bước nhảy step
Cú pháp:
1 |
<b><span style="color: #1d1d1d;">for (i </span><span style="border: 0px; color: red; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">in</span><span style="color: #1d1d1d;"> a..b </span><span style="color: red;">step </span><span style="color: #1d1d1d;">x) {<br /> Xử lý lặp<br />}</span></b> |
Với cú pháp trên thì biến bước nhảy i sẽ tự động tăng dần từ a cho tới b nhưng mỗi lần duyệt nó sẽ tăng theo X đơn vị.
Ví dụ về vòng lặp for tính tổng các số chẵn từ 0 đến 10
1 |
<b><span style="color: black;">fun </span><span style="color: black;">main(args: Array<String>) {<br /></span><span style="color: black;"> var </span><span style="color: black;">sum:Int=</span><span style="color: black;">0<br /></span><span style="color: black;"> val </span><span style="color: black;">n:Int=</span><span style="color: black;">10<br /></span><span style="color: black;"> for </span><span style="color: black;">(i </span><span><span style="color: red;">in</span> 2..n</span><span style="color: black;"> </span><span style="color: red;">step </span><span style="color: black;">2</span><span style="color: black;">)<br /> {<br /> sum += i<br /> }</span> <br /><span style="color: black;"> println</span><span style="color: black;">(</span><span style="color: black;">"Tổng chẵn=</span><span style="color: navy;">$</span><span style="color: black;">sum</span><span style="color: black;">"</span><span style="color: black;">)<br />}</span> </b><span style="color: #1d1d1d; font-size: 14px; font-weight: 400;"><br /></span> |
Ở ví dụ trên biến i sẽ được tăng lên 2 đơn vị sau mỗi lần lặp. Khởi tạo i chạy từ 2 nên nó sẽ tự động tăng thành các số chẵn. Nên kết quả ta sẽ được tổng các số chẵn từ 0 đến 10.
4. Vòng lặp for với bước nhảy downTo
Cú pháp:
1 |
<b><span style="color: #1d1d1d;">for (i </span><span style="color: red;"><span style="border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">in</span> </span><span style="color: #1d1d1d;">b </span><span style="color: red;">downTo </span><span style="color: #1d1d1d;">a) {<br /> Xử lý lặp<br />}</span></b> |
Với cú pháp trên thì biến bước nhảy i sẽ tự động giảm dần từ b cho tới a mỗi lần duyệt nó sẽ giảm 1 đơn vị. Ta có thể áp dụng thêm step vào như sau:
1 |
<span style="border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><b><span style="color: #1d1d1d;">for (i </span><span style="border: 0px; color: red; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">in</span><span style="color: #1d1d1d;"> b </span><span style="color: red;">downTo </span><span style="color: #1d1d1d;">a </span><span style="color: red;">step </span><span style="color: #1d1d1d;">x) {<br /> Xử lý lặp<br />}</span></b></span> |
Với cú pháp trên biến i sẽ được giảm X đơn vị sau mỗi lần duyệt.
5. Vòng lặp for với tập đối tượng
Cú pháp:
1 |
<b>for (item <span style="border: 0px; color: red; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">in</span> collection) {<br /> Xử lý lặp<br />}</b> |
Với cấu trúc này vòng lặp for sẽ duyệt từng đối tượng trong một tập đối tượng.
Ví dụ:
1 |
<b>var ds = arrayOf("Java", "Kotlin", "C#")<br />for (kq </b><strong style="border: 0px; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; color: red; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">in</span> </strong><b>lt) {<br /> print(kq + " ")<br />}</b> |
Kết thúc phần tìm hiểu về vòng lặp for trong Kotlin tại đây. Mọi ý kiến đóng góp vui lòng để lại vào phần bình luận bên dưới. Chúc các bạn học tập tốt. Và đừng quên theo dõi AnonyHome để xem thêm những bài viết mới.