Hello World - 互動式教學課程簡介
本教學課程會以互動方式讓您使用瀏覽器撰寫 C#,並查看編譯及執行程式碼的結果,藉此了解 C#。 它包含開頭為 "Hello World" 程式的一系列課程。 這些課程會教導您 C# 語言的基本概念。
提示
若要在焦點模式中貼上程式碼片段,您應該使用鍵盤快速鍵 (Ctrl + v 或 cmd + v)。
執行您的第一個程式
在互動式視窗中執行下列程式碼。 選取 [進入焦點模式] 按鈕。 接著,在互動視窗中輸入下列程式碼區塊選取 [執行]:
Console.WriteLine("Hello World!");
恭喜! 您已執行您的第一個 C# 程式。 這是一個會列印 "Hello World!" 訊息的簡單程式。 它會使用 Console.WriteLine 方法來列印該訊息。 Console
是代表主控台視窗的型別。 WriteLine
是 Console
型別的方法,會將文字行列印至文字主控台。
讓我們繼續探索。 本課程的其餘部分會探索使用 string
型別,它代表 C# 中的文字。 就像 Console
型別,string
型別也具有方法。 string
方法可以處理文字。
宣告和使用變數
您的第一個程式會在螢幕上列印 string
"Hello World!"。
提示
在您探索 C# (或任何程式設計語言) 時,可能會在撰寫程式碼時犯錯。 編譯器會找出那些錯誤並回報給您。 當輸出包含錯誤訊息時,請仔細查看範例程式碼以及互動式視窗中的程式碼,看看有哪些可以修正。 該練習將有助於您了解 C# 程式碼的結構。
您的第一個程式僅能列印一則訊息。 您可以使用變數來撰寫更有用的程式。 變數是一種符號,可以使用不同的值來執行相同的程式碼。 讓我們來試試看! 使用下列程式碼取代您在互動式視窗中所撰寫的程式碼:
string aFriend = "Bill";
Console.WriteLine(aFriend);
第一行會宣告一個變數 aFriend
,並為其指派一個值 "Bill"。 第二行會列印出名稱。
您可以將不同的值指派給任何您宣告的變數。 您可以將名稱變更為您的任何一位朋友。 在互動式視窗中,在您已新增的程式碼之後加入這兩行。 請確定您保留變數的 aFriend
宣告及其初始指派。
重要
請勿刪除 aFriend
的宣告。 在現有的宣告後面新增下列程式碼。
aFriend = "Maira";
Console.WriteLine(aFriend);
請注意,同一行程式碼會根據儲存在 aFriend
變數中的值,列印兩個不同的訊息。
您可能也注意到,最後兩個訊息中遺漏 "Hello" 這個字。 讓我們來修正。 將列印訊息的程式碼行修改為下列內容:
Console.WriteLine("Hello " + aFriend);
再次選取 [執行] 查看結果。
您已使用 +
從變數和常數字串建置字串。 還有更好的處理方法。
您可以在 {
與 }
字元之間放置變數,告訴 C# 以變數的值來取代該文字。
這就叫做字串插補。
如果在字串的左引號前新增 $
,即可接著將以大括號括住的變數 (如 aFriend
) 包含在字串內。 試試看:
Console.WriteLine($"Hello {aFriend}");
再次選取 [執行] 查看結果。 訊息應該是 "Hello Maira",而非 "Hello {aFriend}"。
處理字串
您上次的編輯是字串處理功能的初探。 讓我們來探索更多內容。
大括號之間的變數並不限於一個。 試試看:
string firstFriend = "Maria";
string secondFriend = "Sage";
Console.WriteLine($"My friends are {firstFriend} and {secondFriend}");
當您探索更多字串,您會發現字串不只是字母的集合。 您可以使用 Length
來找到字串的長度。 Length
是字串的屬性,會傳回該字串的字元數。 在互動式視窗底端加入下列程式碼:
Console.WriteLine($"The name {firstFriend} has {firstFriend.Length} letters.");
Console.WriteLine($"The name {secondFriend} has {secondFriend.Length} letters.");
提示
這是您自行探索的好時機。 您已學到 Console.WriteLine()
將文字寫至螢幕。 您已學到如何宣告變數,以及將字串串連在一起。 在互動式視窗中實驗。 視窗具有稱為 IntelliSense 的功能,這個功能會提供可執行的動作建議給您。 在 firstFriend
中的 d
後面輸入 .
。 您會看到您可以使用的屬性和方法建議清單。
使用字串完成更多工作
您一直在使用 Console.WriteLine方法來列印訊息。 方法是實作某些動作的程式碼區塊。 它具有名稱,以便於您可以存取。
Trim
假設您的字串有您不想要顯示的開頭或尾端空格。 您想要修剪字串的空格。 Trim 方法以及相關的 TrimStart 和 TrimEnd 方法會執行這項工作。 您只要使用這些方法就可以移除前置和尾端空格。 試試下列程式碼:
string greeting = " Hello World! ";
Console.WriteLine($"[{greeting}]");
string trimmedGreeting = greeting.TrimStart();
Console.WriteLine($"[{trimmedGreeting}]");
trimmedGreeting = greeting.TrimEnd();
Console.WriteLine($"[{trimmedGreeting}]");
trimmedGreeting = greeting.Trim();
Console.WriteLine($"[{trimmedGreeting}]");
方括弧 [
和 ]
有助於視覺化 Trim
、TrimStart
和 TrimEnd
方法的用途。 括弧會顯示空白字元的開始和結束位置。
此範例強調了處理字串的幾個重要概念。 操作字串的方法會傳回新字串物件,而不是就地修改。 您可以看到,每次呼叫 Trim
方法時都會傳回新字串,但不會變更原始訊息。
Replace
還有其他方法可以用來處理字串。 例如,您以前在編輯器或文字處理器中應該用過搜尋和取代命令。 Replace 方法會在字串中執行類似的操作。 它會搜尋子字串,並以不同的文字來取代。 Replace 方法會接受兩個參數。 參數就是括號之間的字串。 第一個字串是要搜尋的文字。 第二個字串是用來取代的文字。 試試看吧。 新增下列程式碼。 輸入該程式碼,當您開始在 sayHello
變數後面輸入 .Re
時會看到提示:
string sayHello = "Hello World!";
Console.WriteLine(sayHello);
sayHello = sayHello.Replace("Hello", "Greetings");
Console.WriteLine(sayHello);
另外兩個有用的方法可以使字串全部大寫或全部小寫。 試試下列程式碼。 輸入該程式碼,當您開始輸入 To
時會看到 IntelliSense 如何提供提示:
Console.WriteLine(sayHello.ToUpper());
Console.WriteLine(sayHello.ToLower());
搜尋字串
搜尋和取代作業的另一部分就是在字串中尋找文字。 您可以使用 Contains 方法搜尋。 它會告訴您字串是否包含某個子字串。 請嘗試下列程式碼來探索 Contains:
string songLyrics = "You say goodbye, and I say hello";
Console.WriteLine(songLyrics.Contains("goodbye"));
Console.WriteLine(songLyrics.Contains("greetings"));
Contains 方法會傳回一個布林值,告訴您是否已找到您要搜尋的字串。 布林值會儲存 true
或 false
值。 當顯示為文字輸出時,它們會分別大寫: True
和 False
。 您將在稍後的課程中深入了解布林值。
挑戰
還有兩個類似的 StartsWith 和 EndsWith 方法,也可以搜尋字串中的子字串。 這兩個方法會在字串的開頭或結尾尋找子字串。 嘗試修改先前的範例,以使用 StartsWith 和 EndsWith,而不是 Contains。 在字串的開頭搜尋 "You" 或 "goodbye"。 在字串的結尾搜尋 "You" 或 "goodbye"。
注意
當您測試字串結尾的文字時,請注意標點符號。 如果字串是以句號結尾,則檢查的字串也必須以句號結尾。
如果開頭為 "You" 且結尾為 "hello",則應該會取得 true
,如果開頭或結尾為 "goodbye",則為false
。
完成挑戰
您是否有得到與下列程式碼類似的內容?
string songLyrics = "You say goodbye, and I say hello";
Console.WriteLine(songLyrics.StartsWith("You"));
Console.WriteLine(songLyrics.StartsWith("goodbye"));
Console.WriteLine(songLyrics.EndsWith("hello"));
Console.WriteLine(songLyrics.EndsWith("goodbye"));
恭喜!
您已經完成 "Hello C#" 的 C# 教學課程簡介。 您可以選取下方 C# 中的數字來開始下一項互動式教學課程,或是前往 .NET site 下載 .NET SDK 在您的電腦上建立專案,並繼續編碼。 「後續步驟」章節會帶您返回這些教學課程。
如需進一步閱讀有關 string
類型的資訊:
在這個區段有遇到問題嗎? 如果有,請提供意見反應,好讓我們可以改善這個區段。