C# Advanced (Series #3)

1 min read

c#
  • C# – Anonymous Types
  • C# – Dynamic Types
  • C# – Ternary Operator ?:
  • C# Generics & Generic Constraints
  • C# – Delegates
  • C# – Func Delegate
  • C# – Action Delegate
  • C# – Anonymous Method
  • C# – Events
  • C# – Extension Method
  • C# – HttpClient

C# – Ternary Operator?:

C# bao gồm decision-making operator ?: được gọi là toán tử điều kiện hoặc toán tử ba ngôi. Đây là dạng rút gọn của điều kiện if else.

// Syntax
condition ? statement 1 : statement 2

Toán tử ba ngôi bắt đầu bằng điều kiện boolean. Nếu điều kiện này được đánh giá là đúng thì nó sẽ thực thi câu lệnh đầu tiên sau ?, nếu không thì câu lệnh thứ hai sau : sẽ được thực thi.

Ví dụ sau đây minh họa toán tử ba ngôi.

// Example: Ternary operator
int x = 20, y = 10;
var result = x > y ? "x is greater than y" : "x is less than y";
Console.WriteLine(result);
/*Output
x is greater than y
*/

Ở trên, biểu thức điều kiện x > y trả về true, vì vậy câu lệnh đầu tiên sau ? sẽ được thực thi.

Sau đây thực hiện câu lệnh thứ hai

// Example: Ternary operator
int x = 10, y = 100;
var result = x > y ? "x is greater than y" : "x is less than y";
Console.WriteLine(result);
/*Output
x is less than y
*/

Vì vậy, toán tử ba ngôi là dạng viết tắt của câu lệnh if else. Ví dụ trên có thể được viết lại bằng điều kiện if else

Toán tử ba ngôi lồng nhau

Có thể sử dụng các toán tử bậc ba lồng nhau bằng cách đưa biểu thức điều kiện làm câu lệnh thứ hai.

// Example: Nested ?:
int x = 10, y = 100;
string result = x > y ? "x is greater than y" : 
                    x < y ? "x is less than y" : 
                        x == y ? "x is equal to y" : "No result";
Console.WriteLine(result);

Toán tử ba ngôi có tính right-associative. Biểu thức a ? b : c ? d : e được đánh giá là ? b : (c ? d : e), không phải là (a ? b : c) ? d: đ.

// Example: Nested ?:
var x = 2, y = 10;
var result = x * 3 > y ? x : y > z? y : z;
Console.WriteLine(result);
Avatar photo

BigQuery vs Google Cloud SQL – P2

Ở bài viết trước tôi đã tổng quan về khái niệm, các tính năng chính và so sánh sự khác biệt chính của GCP...
Avatar photo Toai Nguyen Cong
11 min read

BigQuery vs Google Cloud SQL – P1

Trong bối cảnh điện toán đám mây không ngừng phát triển, các doanh nghiệp bị ngập trong các lựa chọn khi nói đến việc...
Avatar photo Toai Nguyen Cong
5 min read

Leave a Reply

Your email address will not be published. Required fields are marked *