Chuyển đến nội dung chính

IF ELSE trong Scala

Trong hướng dẫn này, bạn sẽ tìm hiểu về các câu lệnh điều kiện IF ELSE trong ngôn ngữ lập trình Scala.
· 5 phút đọc

Khám phá cùng AI

if else
Nguồn: Scala - IF ELSE Statements

Giống như nhiều ứng dụng và ngôn ngữ lập trình khác, Scala cũng có các câu lệnh điều kiện if-else để ra quyết định. Khối điều kiện if sẽ được thực thi nếu điều kiện là True; nếu không, khối điều kiện else sẽ được thực thi (chỉ khi có câu lệnh else).

Thông thường, câu lệnh else không có điều kiện; nó chỉ chạy khi điều kiện if là False. Tóm lại, các câu lệnh if-else gồm các biểu thức boolean hoạt động trên cơ sở True-False.

Có nhiều kiểu câu lệnh if-else khác nhau:

- Câu lệnh If,

- Câu lệnh If-Else,

- If-else lồng nhau,

- If-Else-If-Else.

Trước khi bắt đầu tìm hiểu các kiểu if-else khác nhau, hãy nhanh chóng thiết lập môi trường Scala cho người dùng mac theo các bước dưới đây.

Lưu ý: Hãy đảm bảo bạn đã cài Java, nếu chưa thì vui lòng làm theo hướng dẫn tại đây.

- \$ brew update

- \$ brew install scala

- \$ brew install sbt

- \$ echo '-J-XX:+CMSClassUnloadingEnabled' >>
/usr/local/etc/sbtopts

- \$ echo '-J-Xmx2G' >> /usr/local/etc/sbtopts

Sau khi xong các bước trên, hãy nhanh chóng kiểm tra cài đặt bằng cách gõ scala trong terminal, bạn sẽ thấy đầu ra như bên dưới.

output

Lưu ý: Trong hướng dẫn này, bạn sẽ viết mã trong trình soạn thảo vim và thực thi từ terminal.

Câu lệnh if trong Scala

Câu lệnh if bao gồm một biểu thức có bản chất là boolean (đúng hoặc sai). Nếu biểu thức là đúng, khối mã bên trong câu lệnh if sẽ được thực thi; nếu biểu thức là sai, dòng mã đầu tiên ngay sau phần kết thúc của câu lệnh if sẽ được thực thi.

if(boolean expression)
{
execute if boolean expression holds true
}

Đầu tiên, bạn sẽ định nghĩa một object hoặc class tên scala_if; bên trong đó bạn đặt hàm main và viết phần thân chính của mã. Bạn sẽ tạo một biến số nguyên x với giá trị 20. Cuối cùng là phần cốt lõi: khối if với điều kiện x<=20; vì x có giá trị 20 nên khối bên trong câu lệnh if sẽ được thực thi.

Hãy lưu đoạn mã dưới đây với tên if.scala.

code

Để chạy đoạn mã trên, bạn chỉ cần gõ scala if.scala và bạn sẽ thấy đầu ra như bên dưới.

output

Câu lệnh if-else trong Scala

Tương tự câu lệnh if, câu lệnh if-else cũng gồm một biểu thức có bản chất boolean (đúng hoặc sai). Nếu điều kiện if là đúng thì khối mã trong if sẽ được thực thi; nếu sai thì khối mã trong else sẽ được thực thi.

if(boolean expression)
{
execute if boolean expression holds true
}
else
{
execute block if boolean expression (if statement) holds false
}

Đoạn mã sau sẽ thực thi câu lệnh else vì biến x có giá trị lớn hơn 20, do đó khối mã bên trong else sẽ được chạy.

Hãy lưu đoạn mã dưới đây với tên if-else.scala.

code

Để chạy đoạn mã trên, bạn chỉ cần gõ scala if-else.scala và bạn sẽ thấy đầu ra như bên dưới.

output

If-else lồng nhau trong Scala

Tương tự như thường có một câu lệnh if theo sau bởi một câu lệnh else, cấu trúc if-else lồng nhau cũng tương tự về tinh thần. Trong if-else lồng nhau, bạn có thể dùng một câu lệnh if hoặc else-if bên trong một câu lệnh if hoặc else-if khác.

Ở phần tiếp theo, bạn sẽ xem các câu lệnh else-if.

if(boolean expression 1)
{
  execute block 1 if boolean expression 1 holds true**
  if(boolean expression 2)
  {
   execute block 2 if boolean expression 1 and 2 holds true
  }
}

Đoạn mã sau sử dụng các câu lệnh nested-if để so sánh bốn biến số nguyên là $v$, $x$, $y$ và $z$, và cuối cùng, nếu tất cả điều kiện đúng, nó sẽ in kết quả ra terminal.

Hãy lưu đoạn mã dưới đây với tên nested-if-else.scala.

code
output

Câu lệnh else-if trong Scala

Câu lệnh else-if mạnh mẽ hơn so với if-else. Khác với if-else, nơi một else theo sau một câu lệnh if, else-if bản thân nó là một câu lệnh đơn. Nó cho phép bạn kiểm tra nhiều điều kiện.

Tuy nhiên, có một vài quy tắc cần lưu ý khi dùng else-if:

  • Một else-if chỉ nên xuất hiện sau một câu lệnh if; một câu lệnh if có thể có không hoặc nhiều else-if.

  • Tương tự, một else chỉ nên xuất hiện sau các câu lệnh if và else-if; một câu lệnh if có thể có không hoặc một câu lệnh else.

  • Khi một else-if thành công, tất cả các else-if hoặc else còn lại sẽ bị bỏ qua.

if(boolean expression 1)
{
  execute block 1 if boolean expression 1 holds true
}
else-if(boolean expression 2)
{
  execute block 2 if boolean expression 2 holds true
}
else
{
  execute this block if all of the above statements holds false
}

Kết luận

Chúc mừng bạn đã hoàn thành hướng dẫn.

Hướng dẫn này là điểm khởi đầu tốt cho người mới muốn học các câu lệnh điều kiện IF ELSE trong Scala.

Một bài tập nhỏ cho bạn: hãy viết một đoạn mã ngắn sử dụng câu lệnh else-if trong Scala và thử hiểu cách các câu lệnh này khác với những kiểu còn lại.

Tài liệu tham khảo:

Vui lòng đặt câu hỏi liên quan đến hướng dẫn này trong phần bình luận bên dưới.

Chủ đề

Liên quan