【公告】因應 .NET5 2020 改版,原預計 6/1 開放 ASP.NET MVC 全系列課程訂閱暫停

C# 變數宣告與設值

建構應用程式的主要目的在於資料處理,門從最簡單的整數、字串,到陣列、集合與資料庫,甚至近年成為顯學的AI技術,同樣亦是資料理技術,因此入門任何程式語言,首要之務便是理解用於儲存資料的變數。

變數被用以儲存特定的資料,你可以根據程式運算需求,隨時調整變數儲存的資料值,以方便後續的程式存取。

每一個變數均對應到一種型別,而每一種型別代表一種特定的資料型態(整數、字串等等),變數在使用前須預先宣告其對應的型別,而這個變數接下來只能儲存相容於其對應型別的資料,例如以下這一行程式碼:

string x ; 

string 是一個關鍵字,代表字串型態資料的型別名稱,x 則是一個新建立的變數名稱,後續可以用來儲存字串型態的資料。string 是語法關鍵字,一定要照寫,如果要儲存其它型態的資料-例如整數,則需使用 int 的整數型別名稱 int ,其它還有不同型態的型別可供宣告。

變數名稱 x 則根據程式需求自行命名,一般字元組合可用來命名變數。

string msgx ;
int numbery ;

這兩行程式碼可以看到進一步的變數宣告,第一行的 msgx 是字串型態的變數,而第二行的 numbery 則是整數型態的變數。

你也可以同時宣告一個以上型別相同的變數,變數與變數之間,以逗點隔開即可語法如下:

string x1, x2, x3 ;

其中的 x1, x2, x3 分別代表每一個被宣告的變數,而它們的型別均是相同的 string。

變數的命名

變數命名有其一定的規則,最重要的是避免使用語法預先定義的關鍵字,例如你不可以將一個變數命名為 string 、 int 或是 void 等等,C# 賦予這些關鍵字特殊的意義,因此不允許將它們作為變數的名稱。
如果要為了某些特殊的理由必須使用關鍵字來命名, C# 提供變通的方法,以符號 @作為名稱的字首,例如 @void 便是一個合法的變數名稱。
為變數作命名的另外一個限制是字首必須為字母或是底線,而且大小寫相異,例如firstValue與FirstValue是不一樣的名稱,以下為一些合法的變數名稱:

_  
a  
xy  
firstValue
secondvalue  
string_Var
x100

其中要注意,底線字元與數字同樣可以作為變數名稱,但字首不可以是數字,底下是不合法的變數名稱:

void  
class
8a  
10_i

void 與 class 均是關鍵字不可以作為變數名稱,而變數同時應該避免以數字為字首的變數名稱,這些不合法的變數都沒有辦法通過編譯。要提醒讀者的是,變數名稱雖然可以由任意字元所組成,但是基於程式可讀性以及維護上的考量,建議為變數取一個符合其意義的名稱,會是比較合適的作法。

變數設值與初始化

完成變數的宣告,接下來就可以將資料儲存於其中,這個過程稱為設值,例如以下的程式碼:

string msg1 ;
msg1 = "Hello";

第一行宣告字串型態的變數 msg1,接下來將一個字串「Hello」指定給 msg1 ,其中的等號是所謂的「設值」運算子,會將右邊的值儲存至左邊的變數。

完成設值,接下來 msg1 本身就表示一個「Hello」字串。

如果一開始宣告的同時已經確認數要儲的值,可以在宣告時同時完成設值,這個過程是變數的初始化程序,如下式 :

string msg1 = "Hello" ; 

這一行程式碼的功能與上述先進行宣告再完成設值的效果相同。

沒有經過宣告設值的變數,不能夠直接被使用,如果嘗試將一個未經設定的變數使用在程式運算當中,將導致使用未指定變數的錯誤。

變數的宣告與初始化值的設定,亦可以使用逗號將其隔開,如下 :

string msg1 = "Hello", msg2 = "Welcome";

使用逗號隔開的變數宣告,你也可以選擇性的指定其中某些變數的初始值,其他的初始值則於程式中指定。






沒有留言: