Dart 程式設計中的變數


Dart 作為一種靜態型別語言,要求我們宣告要使用的變數的型別。簡單來說,在使用變數之前,我們需要定義將在其中儲存什麼型別的資料。

示例

考慮以下示例:

 線上演示

void main(){
   int collegeId = 1234;    // declaring and assigning a variable
   print(collegeId);        // printing the variable's value

   String myName = "mukul";
   print(myName);
}

在上面的示例中,我們聲明瞭兩個名為 'collegeId' 和 'myName' 的變數,並分別為它們分配了 1234 和 "mukul" 作為值。在下一行,我們簡單地列印儲存在兩個變數中的值。

輸出

1234
mukul

還應該注意的是,Dart 還為我們提供了一些靈活的功能,我們可以使用 **var 關鍵字** 宣告任何資料型別的變數。因此,在上面的示例中,我們聲明瞭兩個變數,即型別為 int 的 'collegeId' 和型別為 string 的 'myName',我們可以不宣告型別,而用 var 關鍵字替換它們,並且 **dartAnalyzer** 將自動推斷型別。

示例

考慮以下示例:

 線上演示

void main(){
   var collegeId = 1234;
   print(collegeId);

   var myName = "mukul";
   print(myName);
}

輸出

1234
mukul

空值

在 Dart 中宣告的變數並且沒有分配任何值將自動儲存一個空值。無論變數的資料型別是 bool 還是 String,或者我們是否使用 var 關鍵字聲明瞭變數,Dart 中未分配的變數都將簡單地儲存空值。

示例

考慮以下示例:

 線上演示

void main(){
   var myVariable;           // a var variable
   int collegeID;           // int
   bool isStudent;          // a bool
   double marksInEnglish;  // a double
   String fullName;        // a string

   print(myVariable);
   print(collegeID);
   print(isStudent);
   print(marksInEnglish);
   print(fullName);
}

輸出

null
null
null
null
null

還應該注意的是,一旦我們聲明瞭特定型別的變數,我們就不能為其分配任何其他型別的值。

示例

考慮以下示例:

void main(){
   int collegeID = 1234;
   print(collegeID);
   collegeID = "idk";
   print(collegeID);
}

在上面的示例中,我們試圖將字串值分配給 int 變數,這是完全錯誤的。輸出將是:

輸出

Error: A value of type 'String' can't be assigned to a variable of
type 'int'.
   collegeID = "idk";
               ^
Error: Compilation failed.

即使我們使用 var 關鍵字宣告變數,我們仍然不允許將其他型別的值分配給已經推斷出的型別。

示例

考慮以下示例:

 線上演示

void main(){
   var collegeID = 1234;
   print(collegeID);
   collegeID = "idk";
   print(collegeID);
}

輸出

Error: A value of type 'String' can't be assigned to a variable of
type 'int'.
   collegeID = "idk";
               ^
Error: Compilation failed.

更新於: 2021年5月24日

80 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告