Hellom's Studio.

Dart 学习之数据类型

字数统计: 575阅读时长: 2 min
2019/07/15 Share

基础写法

1
2
3
4
5
6
// main是固定写法 是程序的入口
void main(){

print('Hello world');

}

变量与常量

变量

  • var 声明变量 可赋予不同类型的值

  • final 声明一个只能赋值一次的变量

常量

  • const 声明一个只读的常量 一旦声明 常量的值就不能改变

数据类型

数值型 - Number

类型:
  • int 整型

  • double 浮点型

数值型操作:
  • +-*/~/%

  • ~/ 取整运算符

常用方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
e.g.

int a = 10 ;

//isEven 是否为偶数
print(a.isEven); // => true

//isOdd 是否为奇数
print(a.isOdd); // => false


int b = -100;
//abs() 取绝对值
print(b.abs()); // => 100

...

字符串 - String

字符串创建:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
e.g.
//单引号 双引号创建字符串
String str1 = 'Hello World';


//三个引号 可创建多行字符串
String str2 = '''Hello
dart''';


//可使用 r 创建原始 raw 字符串
String str3 = 'Hello \n dart';
print(str3); => /* hello
dart
*/

//加上 r 显示原始字符串 没有转义
String str4 = r'Hello \n dart';
print(str4); // => Hello \n dart

运算符
  • +*==[]
插值表达式
  • ${expression}
1
2
3
4
5
6
e.g.

int a = 1;
int b = 2;
print('a + b = ${ a + b}'); // a + b = 3
print('a = $a'); // a = 1
常用方法
1
2
3
4
5
6
7
8
9
10
11
e.g.

String str1 = 'This is mine';

//contains() 是否包含该字段
print(str1.contains('This')); // true

//startsWith() 是否以该字段开始
print(str1.startsWith('a')); // false

...

布尔型 - Boolean

1
2
3
4
e.g.

//使用 bool 表示布尔类型
bool isTrue = true;

列表 - List

list(数组)创建:
1
2
3
4
5
6
7
8
9
10
11
12
e.g.

//创建List
var list = [1,2,3];

//创建不可变的List
var list = const[1,2,3];

//构造创建
var list = new List();

//取值方式同js
常用方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
e.g.

var list = ['hello','dart'];

//add()
list.add('new');
print(list); // ['hello','dart','new'];

//insert()
list.insert(1, 'js');
print(list); // ['hello','js','dart'];

//clear()
list.clear();
print(list); // [ ];

//sublist()
var list = ['hello','dart','new'];
print(list.sublist(1)); // ['dart','new'];

...

键值对 - Map

Map创建:
1
2
3
4
5
6
7
8
9
10
11
12
e.g.

//创建map
var map = {'first':dart, 1:true};

//创建不可变的map
var map = const{'first':dart, 1:true};

//构造创建
var map = new Map();

//取值方式同js
常用方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
e.g.

var map = {'fisrt':'dart' , 'second':'java' , 'third':'js'};

//keys
print(map.keys); // (fisrt, second, third)

//values
print(map.values);// (dart, java, js)

//containKey()
print(map.containKey('first')); // true 是否包含 ’first‘

//可使用 asMap() 把list类型 转换成 map类型
var list = ['1','2','3'];
print(list.asMap()); //{0: 1, 1: 2, 2: 3}

...

dynamic

1
2
3
4
5
6
7
8
9
10
e.g.

// dynamic 可声明不同类型的变量
dynamic b = 20;
b = 'js';

//list的元素可以为多类型的数组
var list = new List<dynamic>();
list.add(1);
list.add(true);
CATALOG
  1. 1. 基础写法
  2. 2. 变量与常量
    1. 2.1. 变量
    2. 2.2. 常量
  3. 3. 数据类型
    1. 3.1. 数值型 - Number
      1. 3.1.1. 类型:
      2. 3.1.2. 数值型操作:
      3. 3.1.3. 常用方法:
    2. 3.2. 字符串 - String
      1. 3.2.1. 字符串创建:
      2. 3.2.2. 运算符
      3. 3.2.3. 插值表达式
      4. 3.2.4. 常用方法
    3. 3.3. 布尔型 - Boolean
    4. 3.4. 列表 - List
      1. 3.4.1. list(数组)创建:
      2. 3.4.2. 常用方法:
    5. 3.5. 键值对 - Map
      1. 3.5.1. Map创建:
      2. 3.5.2. 常用方法:
    6. 3.6. dynamic