變數可以存放各種類型,可以使用var來定義,但是建議每個變數要放什麼類型定義的人一定最清楚,還是建議把類型指定給變數,這樣可以減少很多出錯的機會,例如知道年齡只會存整數,可以設定 int
,在前一篇文章定義變數的時候有提到 Dart 變數與常數。
預設資料型態
以下列出預設有的資料型態,比較常見的類型。
- 數字型態:整數
int
、浮點數double
- 布林值型態:
bool
- 字串型態:
String
- 陣列型態:
lists
- 集合型態:
maps
常用的資料型態
數字
定義數字類型變數,可以儲存整數以及浮點數。
整數 int
int age = 28;
浮點數 double
double pi = 3.14159;
字串
用於記錄一串文字,可以用雙引號或單引號。
String name = "victor";
如果很多行可以使用三個雙引號。
String s1 = """
第一行
第二行
可以很多行這樣直接輸出
""";
每一行後面都會有換行 \n
看不見的字符串,如果要原始狀態連 \n
都要顯示,可以在變數值前面加入一個小寫 r
,如下範例將會將 \n
當作字串顯示出來。
String s1 = r"Victor \n 測試輸出原始字串";
類型的轉換 - 數字與字串
變數裡面宣告以後資料型態被賦予過以後 ,例如var age = 28
或一開始就指定 int age = 28
如果要存入別的類型是不行的,如下圖所示,我把原本已經定義好的整數變數 age
,因此有時候就需要轉換,假設使用者輸入的欄位回來的內容都是string 字串,那要計算年齡相關的操作時,就必須轉換成需要的資料型態,例如把 '28' 字串轉成整數 存入 age
變數中。
int age = int.parse('28'); // 字串轉整數
// 字串轉浮點數
var doubleValue = double.parse('168.5');
// 整數轉字串
String s1 = 168.toString();
// 浮點數轉字串,取到小數點後兩位
String s2 = 3.14159.toStringAsFixed(2);