練習 - 設定和取得變數的值
因為變數是數據的暫存記憶體容器,所以它們應該 寫入 和 讀取。 您將有機會在下列練習中執行這兩個動作。
練習 - 使用變數
在此練習中,您將宣告變數、為其指派值、擷取其值等等。
建立您的第一個變數
在 .NET 編輯器中選取所有程式碼,並按刪除鍵或退格鍵以刪除該程式碼。
在程式碼編輯器中輸入下列程式碼:
string firstName; firstName = "Bob";
若要宣告變數,請輸入您想要使用的資料類型,後面接著變數的名稱。 若要將值指派給變數,您可以使用 指派運算符,這是單一等號字元 =
。
備註
指派值也稱為「設定變數」,或只是「設定」作業。
不正確地將值指派給變數
一定要注意,指派的順序是從右到左。 換句話說,C# 編譯程式必須先瞭解指派運算符右邊的值,然後就可以對指派運算子左邊的變數執行指派。 如果您反轉順序,您會混淆 C# 編譯程式。
修改您所撰寫的程式碼,以符合下列程式碼:
string firstName; "Bob" = firstName;
現在,執行程式碼。 您會在輸出控制台中看到下列錯誤:
(2,1): error CS0131: The left-hand side of an assignment must be a variable, property or indexer
不正確地將不正確的數據類型值指派給變數
您已瞭解 C# 是設計來強制執行類型。 當您使用變數時, 強制執行類型 表示您無法將一個數據類型的值指派給宣告為保存不同數據類型的變數。
修改您所撰寫的程式碼,以符合下列程式碼:
int firstName; firstName = "Bob";
現在,執行程式碼。 您會在輸出控制台中看到下列錯誤:
(2,9): error CS0029: Cannot implicitly convert type 'string' to 'int'
錯誤訊息會提示 C# 編譯程式在幕後嘗試執行的動作。 它嘗試「隱含地轉換」字串 「Bob」 做為 int 值;然而,這是不可能的。 即便如此,C# 還是嘗試進行轉換,但失敗,因為 「Bob」 一詞沒有對等的數值。
稍後您將深入瞭解隱含和明確類型轉換。 現在,只要記住變數只能保存符合其指定數據類型的值。
擷取儲存在變數中的值
若要從變數擷取值,您只需使用變數的名稱即可。 此範例會設定變數的值,然後擷取該值,並將其顯示在控制台中。
修改您所撰寫的程式碼,以符合下列程式碼:
string firstName; firstName = "Bob"; Console.WriteLine(firstName);
現在,執行程式碼。 您會在輸出主控台中看到下列結果:
Bob
從變數擷取值也稱為「取得變數」,或只是「取得」作業。
當您撰寫程式代碼行時,您會看到編譯程式正在檢查您的程式代碼並發現可能的錯誤。 編譯程式是一個絕佳的工具,可協助您更快獲得程式代碼正確無誤。 現在您已熟悉不同類型的錯誤,您可以透過編譯程式錯誤訊息的協助快速修正錯誤。
重新指派變數的值
您可以視需要重複使用和重新指派變數的次數。 此範例說明該想法。
修改您所撰寫的程式碼,以符合下列程式碼:
string firstName; firstName = "Bob"; Console.WriteLine(firstName); firstName = "Liem"; Console.WriteLine(firstName); firstName = "Isabella"; Console.WriteLine(firstName); firstName = "Yasmin"; Console.WriteLine(firstName);
現在,執行程式碼。 您會在輸出主控台中看到下列結果:
Bob Liem Isabella Yasmin
初始化變數
您必須先 將變數設定 為值,才能從變數 取得 值。 否則,您會看到錯誤訊息。
修改您所撰寫的程式碼,以符合下列程式碼:
string firstName; Console.WriteLine(firstName);
現在,執行程式碼。 您會在輸出主控台中看到下列結果:
(2,19): error CS0165: Use of unassigned local variable 'firstName'
若要避免發生未指派局部變數的可能性,建議您在宣告該值之後儘快設定值。
事實上,您可以同時執行 宣告,並在一行程式代碼中設定變數的值。 這項技術稱為 初始化 變數。
修改您所撰寫的程式碼,以符合下列程式碼:
string firstName = "Bob"; Console.WriteLine(firstName);
現在,執行程式碼。 您應該會看到下列輸出:
Bob
回顧
以下是您到目前為止已瞭解如何使用變數的內容:
- 您必須先將值指派給變數,才能從變數擷取 (get) 值。
- 您可以在宣告點將值指派給變數,以初始化變數。
- 指派會由右到左進行。
- 您可以使用單一等號字元做為指派運算符。
- 若要從變數擷取值,您只需要使用變數的名稱。