一、基本用法
三目運算符是一種簡便的if-else語句的簡寫方式,它包含三個操作數:一個求值為布爾類型的條件表達式和兩個可能具有不同類型的表達式。
基本語法如下所示:
condition? expression1: expression2;
其中,如果condition為True,則返回expression1的值,否則返回expression2的值。
舉個例子:
int a = 5; int b = 10; int max = (a > b) ? a : b; Console.WriteLine(max); //輸出10
上面的代碼使用三目運算符比較a和b,返回其中較大的那個值。
二、嵌套運算符
三目運算符還可以對多個條件進行嵌套,實現更加複雜的判斷。
如果嵌套條件過多,建議使用if-else語句。
下面是一個對數字大小進行排序的例子:
int a = 5; int b = 10; int c = 7; int max = (a > b) ? ((a > c) ? a : c) : ((b > c) ? b : c); Console.WriteLine(max); //輸出10
上面的代碼首先比較a和b的大小,取出其中較大的值,再與c比較大小,取出最大值。
三、常見用途舉例
1.在判斷中返回布爾值
三目運算符可以用於簡單的布爾判斷,返回True或False。
舉個例子:
int a = 5; int b = 10; bool result = (a > b) ? false : true; Console.WriteLine(result); //輸出True
上面的代碼中,判斷a是否大於b,如果是則返回False,否則返回True。
2.在賦值中使用
三目運算符可以在賦值中使用,避免使用if-else語句。
舉個例子:
int a = 5; int b = 10; int max = (a > b) ? a : b; Console.WriteLine(max); //輸出10
上面的代碼中,比較a和b的大小,返回其中較大的那個值,賦值給max。
3.在調用函數時使用
三目運算符可以在調用函數時使用,根據條件選擇不同的參數。
舉個例子:
void Show(string message) { Console.WriteLine(message); } void Show(int value) { Console.WriteLine(value); } int a = 5; int b = 10; int max = (a > b) ? a : b; Show((a > b) ? "a > b" : "a <= b"); //輸出"a b) ? a : b); //輸出10
上面的代碼中,比較a和b的大小,返回其中較大的那個值,調用不同的Show函數分別輸出字元串或數字。
四、小結
三目運算符是一種簡化代碼的方式,特別適用於一些簡單的判斷和賦值場景。但是在嵌套條件過多或者需要進行更加複雜的判斷時,建議使用if-else語句。
實際開發中,應根據具體情況靈活使用。
完整代碼示例:
using System; class Program { static void Main(string[] args) { int a = 5; int b = 10; int max = (a > b) ? a : b; Console.WriteLine(max); //輸出10 int c = 7; max = (a > b) ? ((a > c) ? a : c) : ((b > c) ? b : c); Console.WriteLine(max); //輸出10 bool result = (a > b) ? false : true; Console.WriteLine(result); //輸出True Show((a > b) ? "a > b" : "a <= b"); //輸出"a b) ? a : b); //輸出10 } static void Show(string message) { Console.WriteLine(message); } static void Show(int value) { Console.WriteLine(value); } }
原創文章,作者:JXGSU,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/368568.html