1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

基本的な型定義の仕方

void main() {
  int age = 5;  // 整数
  double weight = 3.7;  // 小数
  String name = "Pochi";  // 文字列
  String breed = 'Shiba';  // 文字列
  bool isMale = true;  // もしくはfalse

変数定義時にこんな感じで、「型宣言 変数名 = 値」の形式を取る
文末のセミコロンは必須

型推論

// varは最初の代入時に型推論
  var a = 123;
  a = 456;
//   a = "Hello";  // エラー: 型の変更はできない

型宣言なしでvarと書くと型を勝手に推測してくれる。
推測後の型に一致しない値は代入できない。

dynamic型

// dynamicは何型であってもよい
  dynamic b = 123;
  b = 456;
  b = "Hello";

ワイルドカード的になんでも受け付けるの型
typescriptでいうany。

定数

// finalは値の変更を不可に
	final c = 123;
//   c = 456;  // エラー: 値の変更はできない
//   c = "Hello";  // エラー: 値の変更はできない

// constも値の変更を不可に( コンパイル時に確定)
	const d = 123;
//   d = 456;  // エラー: 値の変更はできない
//   d = "Hello";  // エラー: 値の変更はできない
}

値の再代入が不可能な変数

配列

print("----- 空のリスト -----"); 
  var list1 = <int>[];
  list1.add(123);
  list1.add(456);
  list1.add(789);
  list1[1] = 999;
  print(list1);

配列の場合、typescript同様要素の型を指定する。
一致しない型の要素は入れられない

// 他のリストの書き方
  var list2 = List<int>();
  List<int> list3 = [];

List型で定義しつつ要素の方を指定するやり方もある

void main() {
  var numbers = [21, 5, 0, 10, 15, 8, 3, 12, 1, 2, 31, 9];
  
  // 以下にコードを記述する
  for (int number in numbers) {
    if (number < 10) {
      print(number);
    }
  }

}

配列のイテレータもちゃんと型定義する

Set

print("----- 空のセット -----"); 
  Set set2 = {};
  set2.add("Tama");
  print(set2);

Setも一つの型として扱う。要素の重複を許さないという点はJavascriptと同じ

map

print("----- Map -----"); 
  var map1 = {"Pochi":5,
              "Taro":4,
              "Jiro":12,
              "Shiro":3};

mapはハッシュみたいなkey valueのオブジェクト

  print("----- 空のMap -----"); 
  var map2 = {};
  map2["Tama"] = 9;
  print(map2);

特に型宣言しなくてもmapは定義可

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?