c#字符連接符號$與三元運算符的問題


寫代碼中遇到這種問題,字符串處理符號$與三元運算符一起用出現了些許問題,如下:

 1 using System;
 2 namespace HelloWorld
 3 {
 4     class Program
 5     {
 6         static void Main(string[] args)
 7         {
 8             bool b = true;
 9             string who = b ? "Tom" : "Jerry";
10             Console.WriteLine($"Hello {who}");
11             Console.ReadLine();
12         }
13     }
14 }

上面代碼沒有任何問題,但是如果把第9行和第十行合並,

 1 using System;
 2 namespace HelloWorld
 3 {
 4     class Program
 5     {
 6         static void Main(string[] args)
 7         {
 8             Console.WriteLine($"Hello {b ? "Tom" : "Jerry"}");
 9             Console.ReadLine();
10         }
11     }
12 }

內插表達式不能有冒號,必須用括號:

Console.WriteLine($"Hello {(b ? "Tom" : "Jerry")}");

不知道為什么內插表達式不能用冒號。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM