欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# 中 “$” 符號的作用以及用法詳解

 更新時間:2020年06月11日 14:19:46   作者:不染-何程龍  
這篇文章主要介紹了C# 中 “$” 符號的作用以及用法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

前言:$是c# 6.0 的語言特性,功能類似string.format(),更方便的地方在于不要像format一樣使用索引,可以直接使用變量、表達(dá)式或者方法的執(zhí)行。

一、C#中$的作用

談及這個$,其實它是C#6.0語法中模板字符串的一種寫法,什么是模版字符串?還記得你們用過的格式化字符串嗎?string.Format() 這個方法,是最常用的方法之一。

$又是什么呢?它是為了替代string.format()的,原先賦值需要占位符和變量,當(dāng)需要拼接多個變量會造成語句過長等不易理解問題。

$是為了替代string.format(),可以把字符串中的C#變量{}包含起來達(dá)到識別C#變量的目的$"{id}";也支持表達(dá)式,使用$"{(你的表達(dá)式)}";或者方法的執(zhí)行,使用$"{(方法)}"。

二、C#中$的用法

C# 中$符號的作用是C#6.0中新出現(xiàn)的一個特性,也即是字符串的拼接優(yōu)化。

語法格式:$"string {參數(shù)}"

解釋:以$符號開頭開始字符串,其中以{}來進(jìn)行傳參,可以多個參數(shù)累加。

例如:var results = $"Hello {Name}";

三、關(guān)于$的示例講解

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ù)據(jù)很多,假設(shè)它是一個多條的SQL語句,那么在長篇字符串中定位索引,那是不是很累啊!縱使你寫對了索引(沒寫對還得一個個檢查、修改),好不容易完工了。但下一個需求讓你加兩個參數(shù),你的索引位置又得變,還得在萬碼叢中查找你原來索引在哪里的,是不是很惡心?

哈哈,不用沮喪,此時C#6.0模版字符串就可以閃亮登場啦!

怎么用?總結(jié)一下,就是在字符串的雙引號前面加一個 $ 符號,在需要使用變量的地方用{變量}就可以了。這個在我們上面的案例中,也有體現(xiàn)。

四、關(guān)于$的補充知識

正如我們上面所說,{變量}表示在字符串中輸出變量的值,當(dāng)然{}中間也可以是一個表達(dá)式或者方法的執(zhí)行。

$"我的姓名是{GetName()}";
$"name的類型是{name.GetType()}";

如上,這樣就很方便,帥氣了!那么變量和索引可以混用嗎?當(dāng)然也是可以的,如下:

var name = "張三";
var age = 23;
var sex = "男";
var show = string.Format($"我是{name},今年{age},家住在{{0}}", sex); 
Console.WriteLine(show);

在這里插入圖片描述

要注意的是需要用兩次大括號 {{}} 將索引包含起來,也就是這樣的形式,{{索引}}。因為一次是輸出表達(dá)式,兩次就轉(zhuǎn)義成普通的占位符了,這點一定要注意!

總結(jié)

到此這篇關(guān)于C# 中 “$” 符號的作用以及用法的文章就介紹到這了,更多相關(guān)C# $ 符號作用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • c# 冒泡排序算法(Bubble Sort) 附實例代碼

    c# 冒泡排序算法(Bubble Sort) 附實例代碼

    這篇文章主要介紹了c# 冒泡排序算法,需要的朋友可以參考下
    2013-10-10
  • c# Invoke和BeginInvoke 區(qū)別分析

    c# Invoke和BeginInvoke 區(qū)別分析

    這篇文章主要介紹了c# Invoke和BeginInvoke 區(qū)別分析,需要的朋友可以參考下
    2014-10-10
  • C#支付寶新版支付請求接口調(diào)用

    C#支付寶新版支付請求接口調(diào)用

    這篇文章主要為大家詳細(xì)介紹了C#支付寶新版支付請求接口調(diào)用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • C#記錄消息到日志文件的方法

    C#記錄消息到日志文件的方法

    這篇文章主要介紹了C#記錄消息到日志文件的方法,涉及C#針對日志文件的讀寫操作技巧,非常簡單實用,需要的朋友可以參考下
    2015-07-07
  • 基于C#方法重載的總結(jié)詳解

    基于C#方法重載的總結(jié)詳解

    本篇文章是對C#中方法重載進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C#設(shè)計模式實現(xiàn)之迭代器模式

    C#設(shè)計模式實現(xiàn)之迭代器模式

    迭代器模式把對象的職責(zé)分離,職責(zé)分離可以最大限度減少彼此之間的耦合程度,從而建立一個松耦合的對象,這篇文章主要給大家介紹了關(guān)于C#設(shè)計模式實現(xiàn)之迭代器模式的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • C#中的委托使用

    C#中的委托使用

    委托是C#中新加入的一個類型,可以把它想作一個和Class類似的一種類型,和使用類相似,使用一個委托時,需要兩個步驟,首先你要定義一個委托,就像是定義一個類一樣;然后,你可以創(chuàng)建一個或多個該委托的實例。
    2016-07-07
  • Unity實現(xiàn)虛擬鍵盤

    Unity實現(xiàn)虛擬鍵盤

    這篇文章主要為大家詳細(xì)介紹了Unity實現(xiàn)虛擬鍵盤,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • C#中通過API實現(xiàn)的打印類 實例代碼

    C#中通過API實現(xiàn)的打印類 實例代碼

    這篇文章介紹了,C#中通過API實現(xiàn)的打印類 實例代碼,有需要的朋友可以參考一下
    2013-08-08
  • 把DLL文件打包進(jìn)EXE的操作技巧

    把DLL文件打包進(jìn)EXE的操作技巧

    用VS2005建立一個windows項目,取名test,之后把生成DLL文件打包進(jìn)EXE,接下來介紹詳細(xì)的操作技巧,感興趣的朋友可以了解下啊,或許對你有所幫助
    2013-02-02

最新評論