If / switch expression – Swift 5.9 (P.1)

by Chậm
134 views
This entry is part 2 of 9 in the series Coding

Chúng ta chắc là đã quá quen thuộc với ternary conditional operator ( toán tử ba ngôi ) như trên rồi nhỉ. Nhưng với swift 5.9, chúng ta đã có thêm một cách viết khác tường minh hơn đó là sử dụng if / switch. Và trong bài viết này chúng ta sẽ tìm hiểu về nó nhé.

If / switch expression là gì?

Với Swift 5.9. If và switch đã có thể được sử dụng dưới dạng biểu thức. Nói đơn giản thì toán tử ba ngôi được sử dụng như thế nào thì if và switch bây giờ đều có thể sử dụng như vậy.

Ví dụ như bình thường chúng ta đang viết như thế này:

Thì chúng ta hiện nay đã có thể viết như thế này:

Đối với switch có vẻ như là mới mẻ và xịn xò hơn hẳn rồi nhỉ. Nhưng còn if thì sao. Trông cũng không khác gì đối với toán tử ba ngôi mà lại còn phải viết nhiều hơn. Vậy thì nó có gì khác biệt so với toán tử ba ngôi nhỉ.

  • Đầu tiên: Sử dụng if trông rõ ràng là giúp code được tường minh và dễ theo dõi hơn rồi. Đặc biệt là với những lúc mà có các điều kiện rẽ nhánh lồng nhau thì sự tường minh của if sẽ được thể hiện rõ hơn.
  • Thứ Hai: Toán tử ba ngôi thì kiểm tra kiểu dữ liệu một cách đồng thời còn if sẽ kiểm tra nó một cách độc lập. Nghe có chút trừu tượng nhỉ. Vậy thì chúng ta sẽ tới với ví dụ nhé:

Ở đây chúng ta có thể thấy. Do toán tử ba ngôi kiểm tra kiểu dữ liệu một cách đồng thời vậy nên 1 ở đây hệ thống sẽ tự hiểu là 1.0. Với If thì không như vậy mà chúng ta cần viết rõ ra hơn.

Lưu ý:

Để sử dụng được if và switch như một biểu thức thì chúng ta cần lưu ý một vài yếu tố sau:

  • Với mỗi nhánh của if hay switch chỉ được thực thi duy nhất một biểu thức.
  • Mỗi biểu thức được tạo ra ở các nhánh đều phải cùng một kiểu dữ liệu.
  • If luôn đi kèm với else

Và bài viết này chúng ta đã được tìm hiểu về If / switch expression ở trên swift 5.9. Vẫn còn rất nhiều thứ mới nữa ở swift 5.9 và chúng ta sẽ tiếp tục tìm hiểu chúng ở các phần tiếp theo nhé. Xin chân trọng cảm ơn!

Series Navigation<< Raw String in Swift

1 comment

TriT1 October 27, 2023 - 4:13 PM

bài viết khá hay

Reply

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

You may also like

%d bloggers like this: