三元表达式语法:
表达式1?表达式2:表达式3;
表达式1一般为一个关系表达式。
如果表达式1的值为true,那么表达式2的值就是整个三元表达式的值。
如果表达式1的值为false,那么表达式3的值就是整个三元表达式的值。
注意:表达式2的结果类型必须跟表达式3的结果类型一致,并且也要跟整个三元表达式的结果类型一致。
凡是可以使用if-else做的事情,都可以使用三元表达式来完成。
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace 第六天_流程语句 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 //比较两个数字的大小 14 Console.WriteLine("请输入第一个要比较的数字:"); 15 int num01 = Convert.ToInt32(Console.ReadLine()); 16 Console.WriteLine("请输入第二个要比较的数字:"); 17 int num02 = Convert.ToInt32(Console.ReadLine()); 18 if (num01 > num02) 19 { 20 Console.WriteLine(num01); 21 } 22 else 23 { 24 Console.WriteLine(num02); 25 } 26 Console.ReadKey(); 27 28 } 29 } 30 }
改为三元表达式为:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace 第六天_流程语句 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 //比较两个数字的大小 14 Console.WriteLine("请输入第一个要比较的数字:"); 15 int num01 = Convert.ToInt32(Console.ReadLine()); 16 Console.WriteLine("请输入第二个要比较的数字:"); 17 int num02 = Convert.ToInt32(Console.ReadLine()); 18 int max = num01 > num02 ? num01 : num02; 19 Console.WriteLine(max); 20 Console.ReadKey(); 21 } 22 } 23 }