変数は値を格納するための「名前空間メモリ」です。換言すれば、コンテナプログラムの値として。識別子と呼ばれる変数名。以下は、識別子の命名規則であります -
識別子は、キーワードにすることはできません。
識別子は、文字と数字が含まれていてもよいです。
識別子には、スペースや特殊文字が含まれていますが、アンダースコア(できません
_
)と($$
記号を除きます)。変数名は数字で始めることはできません。
TYPE構文
あなたは、変数を使用する前に、変数を宣言する必要があります。ダートの使用は、var
同じ目標を達成するためのキーワード。次のように変数を宣言するための構文は次のとおりです。
var name = 'Smith';
ダーツすべての変数ではなく、値を含むと、基準値内に格納されています。名前付きname
変数の値である文字列オブジェクトへの参照を含みます"Smith"
。
ダート変数名をサポートするためにデータ型を追加することにより、型チェックを。型変数は、特定のデータ型チェック性を保証が含まれています。ここでは同じ構文です
String name = 'Smith';
int num = 10;
次の例を考えてみましょう
void main() {
String name = 1;
}
変数変数に割り当てられた値のデータ型が一致しないため、上記のコードセグメントは、警告を引き起こします。
輸出
Warning: A value of type 'String' cannot be assigned to a variable of type 'int'
すべて初期化されていない変数の初期値null
。ダートは、すべての値がオブジェクトとして扱われるためです。次の例では、同じような状況を説明します
void main() {
int num;
print(num);
}
輸出
Null
dynamic
キーワード
文は静的型付け変数は暗黙のうちに、動的として宣言されていませんでした。また、使用することができるdynamic
代わりに、キーワードvar
変数を宣言するキーワード。
次の例では、同じ内容を示しています。
void main() {
dynamic x = "tom";
print(x);
}
輸出
tom
final
とconst
使用final
およびconst
キーワードは定数を宣言します。ダートは、修正、使用を防止final
またはconst
宣言変数へのキーワードの値を。これらのキーワードは、変数のデータ型を使用することができ、それはまたできるvar
キーワードと一緒に使用すること。
const
キーワードは、コンパイル時の定数を表すために使用されます。使用するconst
変数宣言キーワードは暗黙的であるfinal
インチ
構文:final
キーワード
final variable_name
若しくは
final data_type variable_name
構文:const
キーワード
const variable_name
若しくは
const data_type variable_name
例- final
キーワード
void main() {
final val1 = 12;
print(val1);
}
輸出
12
例- const
キーワード
void main() {
const pi = 3.14;
const area = pi*12*12;
print("The output is ${area}");
}
上記の例では、使用するconst
キーワードを2つの定数を宣言pi
してarea
。面積変数の値は、コンパイル時定数です。
輸出
The output is 452.15999999999997
注-唯一の
const
変数はコンパイル時定数を計算するために使用することができます。コンパイル時の定数は一定であり、その値は、コンパイル時に決定されます
例
あなたが使用変更しようとした場合final
やconst
変数を宣言するためのキーワードを、ダートは例外をスローします。以下の実施例は説明するために与えられています。
void main() {
final v1 = 12;
const v2 = 13;
v2 = 12;
}
上記のコードでは、出力として、次のエラーがスローされます
Unhandled exception:
cannot assign to final variable 'v2='.
NoSuchMethodError: cannot assign to final variable 'v2='
#0 NoSuchMethodError._throwNew (dart:core-patch/errors_patch.dart:178)
#1 main (file: Test.dart:5:3)
#2 _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:261)
#3 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:148)
静的最終constの間の差は、ブログの記事を参照してください。ダーツを静的最終constの差で
この切り替え:http://codingdict.com/article/21913