【Dart】P2 数据类型(int、double、String、bool、List、Map)

Dart 数据类型

Dart 数据类型一览

类型 数据类型 描述
数值 int 整型
数值 double 浮点型
字符串 String
布尔 bool
数组 List 又称为列表
字典 Maps 键值对

Dart 判断数据类型

dart 复制代码
void main() {
  var str = 123;
  print(str is String);
  print(str is int);
}

字符串类型

三种字符串的定义方式:

dart 复制代码
main() {
  var str1 = 'this is str1';
  var str2 = "this is str2";
  var str3 = ''' This
  is str3''';
  // 三个单引号/双引号可换行展示;

  print(str1);
  print(str2);
  print(str3);
}

字符串的拼接:

dart 复制代码
void main() {
  String str1 = "你好";
  String str2 = "Dart";
  print("$str1 $str2");
  print(str1 + " " + str2);
}

数值类型

Dart 中主要有两种数值类型:intdouble

dart 复制代码
void main() {
  int a = 123;
  double b = 23.5;
  double c = 24;
  print("$a $b $c");
}

注意 double 既可以命名整型,又可以命名浮点型;double c = 24; 的结果为 24.0


布尔类型

布尔类型只包含两个值:true 以及 false

dart 复制代码
void main() {
  bool flag = true;
  if (flag){
    print('真');
  } else {
    print('假');
  }
}

数组类型

数组有多种定义方式如下。

方式一:直接定义

dart 复制代码
void main() {
  var l1 = ['张三', 20, true];
  print(l1);
  print(l1.length);
  print(l1[0]);
}

方式二:指定类型

dart 复制代码
void main() {
  var l2 = <String>['张三', '20', 'true'];
  print(l2);
  print(l2.length);
  print(l2[0]);
}

方式三:增加数据

dart 复制代码
void main() {
  var l3 = [];
  l3.add("张三");
  l3.add("20");
  l3.add("true");
  print(l3);
  print(l3.length);
  print(l3[0]);
}

方式四:固定长度

dart 复制代码
void main() {
  var l4 = List.filled(3, "");	// 设定l4的长度为3,且所有的三个值都为空
  print(l4);
  l4[0] = ("张三");
  l4[1] = ("20");
  l4[2] = ("true");
  print(l4);
  print(l4.length);
  print(l4[0]);
}

方式五:固定长度 + 指定类型

dart 复制代码
void main() {
  var l5 = List<String>.filled(3, '');
  print(l5);
  l5[0] = ("张三");
  l5[1] = ("20");
  l5[2] = ("true");
  print(l5);
  print(l5.length);
  print(l5[0]);
}

字典类型

字典定义与读取

dart 复制代码
void main() {
  var person = {
    "name": "张三",
    "age": 20,
    "work": ['程序员', '外卖员']
  };
  print(person);
  print(person["name"]);
  print(person["work"]);
}

字典定义与创建

dart 复制代码
void main() {
  var p = new Map();
  p["name"] = "张三";
  p["age"] = 20;
  p["work"] = ["程序员", "外卖员"];
  print(p);
  print(p["name"]);
  print(p["work"]);
}

以上~

相关推荐
pengyu2 天前
【Flutter 状态管理 - 贰】 | 提升对界面与状态的认知
android·flutter·dart
好的佩奇3 天前
Dart 之异步模型
android·flutter·dart
科昂4 天前
Dart 单线程异步模型:从原理到工程实践的系统化解析
android·flutter·dart
好的佩奇4 天前
Dart 之任务
android·flutter·dart
sg_knight5 天前
Flutter性能优化终极指南:从JIT到AOT的深度调优
前端·flutter·性能优化·web·dart
pengyu5 天前
【Flutter 状态管理 - 壹】 | 提升对声明式编程的认知
android·flutter·dart
pengyu8 天前
系统化掌握Dart网络编程之Dio(四):拦截器篇
android·flutter·dart
pengyu12 天前
系统化掌握Dart网络编程之Dio(二):责任链模式篇
android·flutter·dart
pengyu12 天前
系统化掌握Dart网络编程之Dio(二):配置管理篇
android·flutter·dart
pengyu13 天前
系统化掌握Dart网络编程之Dio(一):筑基篇
android·flutter·dart