這篇文章將為大家詳細講解有關C# 中 “$” 符號的用法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
成都創(chuàng)新互聯(lián)公司專注于寧江網站建設服務及定制,我們擁有豐富的企業(yè)做網站經驗。 熱誠為您提供寧江營銷型網站建設,寧江網站制作、寧江網頁設計、寧江網站官網定制、成都小程序開發(fā)服務,打造寧江網絡公司原創(chuàng)品牌,更為您提供寧江網站排名全網營銷落地服務。
前言:$是c# 6.0 的語言特性,功能類似string.format(),更方便的地方在于不要像format一樣使用索引,可以直接使用變量、表達式或者方法的執(zhí)行。
一、C#中$的作用
談及這個$,其實它是C#6.0語法中模板字符串的一種寫法,什么是模版字符串?還記得你們用過的格式化字符串嗎?string.Format() 這個方法,是最常用的方法之一。
那$又是什么呢?它是為了替代string.format()的,原先賦值需要占位符和變量,當需要拼接多個變量會造成語句過長等不易理解問題。
$是為了替代string.format(),可以把字符串中的C#變量{}包含起來達到識別C#變量的目的$"{id}";也支持表達式,使用$"{(你的表達式)}";或者方法的執(zhí)行,使用$"{(方法)}"。
二、C#中$的用法
C# 中$符號的作用是C#6.0中新出現(xiàn)的一個特性,也即是字符串的拼接優(yōu)化。
語法格式:$"string {參數(shù)}"
解釋:以$符號開頭開始字符串,其中以{}來進行傳參,可以多個參數(shù)累加。
例如:var results = $"Hello {Name}";
三、關于$的示例講解
var str = string.Format("我的名字叫{1},我今年{1}歲。", "張三", 23);
Console.WriteLine(str);這是我們使用string.format()的寫法,下來我們使用$改寫一下。
var str = $"我的名字叫{"張三"},我今年{23}歲。";
Console.WriteLine(str);通過上面這個案例,我們發(fā)現(xiàn),現(xiàn)在使用$代碼簡潔,可讀性強。
可能有些朋友覺得效果不太明顯,那么請看下面這個案例:
var name = "張三";
var age = 23;
var sex = "男";
var message = string.Format("我叫{0},我的年齡為{1},我的性別是{2}", name, age, sex);
var show = $"我叫{name},我的年齡為{age},我的性別是{sex}";
Console.WriteLine(message);
Console.WriteLine(show);
如果還感受不到,那么請你試想一下:如果我們要操作的數(shù)據很多,假設它是一個多條的SQL語句,那么在長篇字符串中定位索引,那是不是很累啊!縱使你寫對了索引(沒寫對還得一個個檢查、修改),好不容易完工了。但下一個需求讓你加兩個參數(shù),你的索引位置又得變,還得在萬碼叢中查找你原來索引在哪里的,是不是很惡心?
哈哈,不用沮喪,此時C#6.0模版字符串就可以閃亮登場啦!
怎么用?總結一下,就是在字符串的雙引號前面加一個 $ 符號,在需要使用變量的地方用{變量}就可以了。這個在我們上面的案例中,也有體現(xiàn)。
四、關于$的補充知識
正如我們上面所說,{變量}表示在字符串中輸出變量的值,當然{}中間也可以是一個表達式或者方法的執(zhí)行。
$"我的姓名是{GetName()}";
$"name的類型是{name.GetType()}";如上,這樣就很方便,帥氣了!那么變量和索引可以混用嗎?當然也是可以的,如下:
var name = "張三";
var age = 23;
var sex = "男";
var show = string.Format($"我是{name},今年{age},家住在{{0}}", sex);
Console.WriteLine(show);
要注意的是需要用兩次大括號
{{}}將索引包含起來,也就是這樣的形式,{{索引}}。因為一次是輸出表達式,兩次就轉義成普通的占位符了,這點一定要注意!
關于C# 中 “$” 符號的用法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
新聞名稱:關于C#中“$”符號的用法
URL地址:http://chinadenli.net/article42/gphjec.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網頁設計公司、定制開發(fā)、建站公司、定制網站、全網營銷推廣、網站導航
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)