C#給字符串賦予字面值——字符串插入、轉義序列的使用

1.佔位符、字符串插入

  給字符串賦予字面值時,常常碰見在字符串中包含變量的狀況,用鏈接符進行拼接、轉換的方式比較麻煩、還容易出錯。C#提供了較爲便捷的處理方式,即‘佔位符’,以及C#6的新功能‘插入字符串’(沒記錯的話是VS2015及後續新版本可用該功能)。下面舉個簡單的例子說明用法:html

string a="A friend in need";post

string b="a friend indeed.";url

想要輸出A friend in need is a friend indeed.這句話,可選擇以下方式:spa

(1)佔位符code

Console.WriteLine(「{0}is{1}」,A friend in need,a friend indeed."); htm

/*字符串裏面須要使用變量的時候,先在該位置使用{ 編號}佔位符(編號從0開始),再在後面相應位置寫內容*/blog

(2)插入字符串ci

Console.WriteLine($"{a} is {b}");開發

/*在雙引號前面加$,而後把雙引號裏面的變量用{ }括起來,雙引號內的變量便可按變量所表明的內容輸出*/字符串

2.轉義序列

如下內容轉載夜店耍流氓的博客


原文連接:C#中字符串的字面值(轉義序列)

在程序開發中,常常會碰到在字符串中字面值中使用轉義序列,下面表格收集了下轉義序列的完整列表,以便你們查看引用:

轉義序列列表
轉義序列 產生的字符 字符的Unicode值
\' 單引號 0x0027
\" 雙引號 0x0022
\\ 反斜槓 0x005C
\0 0x0000
\a 警告(產生蜂鳴) 0x0007
\b 退格 0x0008
\f 換頁 0x000C
\n 換行 0x000A
\r 回車 0x000D
\t 水平製表符 0x0009
\v 垂直製表符 0x000B

      表中的「Unicode值」列是字符在Unicode字符集中的16進制值。使用Unicode轉義序列能夠指定Unicode字符,該轉義序列包括標準的\字符,後跟一個u和一個4位十六進制值(例如,表中x後面的4位數字)。

      下面的字符串是等價的:

      "Karli\'s string."

      "Karli\u0027s string."

     顯然,Unicode轉義序列還有更多用途。

     也能夠逐字地指定字符串,即兩個雙引號之間的全部字符都包含在字符串中,包括行末字符和須要轉義的字符。惟一例外是雙引號字符的轉義,它們必須指定,以避免結束字符串。爲此,能夠在該字符串以前加一個@字符:

      @"Verbatim string literal."

      能夠採用通常方式指定這個字符串,但須要使用下面這種方法:

      @"A  short  list:

      item  1

      item2"

      逐字指定的字符串在文件名中很是有用,由於文件名中大量使用了反斜槓字符。若是使用通常的字符串,就必須在字符串中使用兩個反斜槓,例如:

      "c:\\Temp\\MyDir\\MyFile.doc"

      而有了逐字指定的字符串字面值,這段代碼就更便於閱讀。下面的字符串與上面的等價:

      @"c:\Temp\MyDir\MyFile.doc"   //@後面的字符所有按字面意思解釋(如該語句中的\再也不視做轉義序列的,而是直接視做一個字符)

相關文章
相關標籤/搜索