練習 - 使用字串插補合併字串
雖然字串串連簡單又方便,但在您需要將許多常值字串與變數合併到單一格式設定訊息的情況中,字串插補逐漸受歡迎。
什麼是字串插補?
字串插補會透過使用「範本」與一或多個「插補運算式」將多個值合併為單一常值字串。 「插補運算式」是由左右大括弧符號 { }
括住所指出的。 您可以將會傳回值的 C# 運算式置於括弧中。 當常值字串具有前置 $
字元時,其會變成範本。
換句話說,您不需要撰寫下列程式碼:
string message = greeting + " " + firstName + "!";
您可以改為撰寫這個更精簡的程式碼:
string message = $"{greeting} {firstName}!";
在這個簡單的範例中,您少打了幾下鍵盤。 您可以想像在更複雜的作業中,字串插補能夠多精簡。 此外,許多人都發現字串插補語法不僅較簡潔,而且也更容易閱讀。
在下列練習中,您將使用字串插補重寫上述訊息。
使用字串插補來合併常值字串與變數值
若要將兩個字串插補在一起,您可以建立常值字串,並在字串前面加上 $
符號。 常值字串應該包含至少一組大括弧 {}
,並在大括弧字元內使用變數的名稱。
在 .NET 編輯器中選取所有程式碼,並按刪除鍵或退格鍵以刪除該程式碼。
在 .NET 編輯器中輸入下列程式碼:
string firstName = "Bob"; string message = $"Hello {firstName}!"; Console.WriteLine(message);
現在,執行程式碼。 您會在輸出主控台中看到下列結果:
Hello Bob!
搭配多個變數與常值字串使用字串插補
您可以在同一行程式碼中使用多個字串插補。
將您先前撰寫的程式碼修改為下列程式碼:
int version = 11; string updateText = "Update to Windows"; string message = $"{updateText} {version}"; Console.WriteLine(message);
現在,執行程式碼。 您會在輸出主控台中看到下列結果:
Update to Windows 11
避免中繼變數
就像您在前一個練習中所做的一樣,您可以減少儲存訊息所使用的暫存變數數目。
將您先前撰寫的程式碼修改為下列程式碼:
int version = 11; string updateText = "Update to Windows"; Console.WriteLine($"{updateText} {version}!");
現在,執行程式碼。 輸出主控台中的結果應該相同,即使您將程式碼簡化過:
Update to Windows 11!
合併逐字常值與字串插補
假設您需要在您的範本中使用逐字常值。 您可以同時使用逐字常值前置字元符號 @
與字串插補 $
符號。
刪除先前步驟的程式碼,然後在 .NET 編輯器中輸入下列程式碼:
string projectName = "First-Project"; Console.WriteLine($@"C:\Output\{projectName}\Data");
現在執行程式碼,您應該會看見下列結果。
C:\Output\First-Project\Data
在此範例中,
$
符號可讓您參考括弧內的projectName
變數,而@
符號可讓您使用未逸出的\
字元。
概括回顧
以下是您到目前為止已了解有關字串內插補點的知識:
- 字串插補透過減少某些情況中需要的字元數目,提供比字串串連更好的改良。
- 您可以透過合併每個項目的符號並使用該符號作為字串範本的前置字元,來合併字串插補與逐字常值。