Dart中支持以下数据类型:
Numbers(数值):
int
double
Strings(字符串)
String
Booleans(布尔)
bool
List(数组)
在Dart中,数组是列表对象,所以大多数人称它们为列表。
Maps(字典)
通常来说,Map是一个键值对相关的对象,键和值可以是任何类型的对象,每个键只出现一次, 而一个值则可以出现多次。
不常用数据类型:Runes(Rune是UTF-32编码的字符串,它可以通过文字转换成符号表情或者代表特定的文字。)
main() {
var clapping = '\u{1f44f}'
print(clapping)
print(clapping.codeUnits)
print(clapping.runes.toList())
Runes input = new Runes(
'\u2665 \u{1f605} \u{1f60e} \u{1f47b} \u{1f596} \u{1f44d}')
print(String.fromCharCodes(input))
}
字符串的定义
// 1、字符串定义的几种方式
var str1 = "this is str1"
var str2 = "this is str2"
String str1 = "this is str1"
String str2 = "this is str2"
// 多行字符串的定义
String str1 = '''this is str1
this is str1
this is str2
'''
// 2、字符串的拼接
String str1 = '你好'
String str2 = 'Dart'
print("$str1 $str2")
print(str1 + str2)
print(str1 + " " + str2)
Dart数据类型:数值类型(int double)
// 1、int:必须是整型
int a = 123
a = 45
// 2、double既可以是整型 也可是浮点型
double b = 23.5
b = 24
// 3、运算符 + - * / %
var c = a + b
Dart数据类型:布尔类型(bool值true或者false)
bool flag1 = true;
print(flag1);
bool flag2 = false;
print(flag2);
var flag = true;
if(flag){
print('真');
}else{
print('假');
}
var a = 123;
var b = '123';
if(a == b){
print('a=b');
}else{
print('a!=b');
}
var a = 123;
var b = 123;
if(a == b){
print('a=b');
}else{
print('a!=b');
}
Dart数据类型:List(数组/集合)
// 1、第一种定义List的方式
var l1 = ['aaa','bbbb','cccc']
// 2、第二种定义List的方式
var l2 = List()
l2.add('张三')
// 3、定义List指定类型
var l3 = List<String>()
l3.add('张三')
Dart数据类型:Map(字典)
// 第一种定义 Map的方式
var person = {
"name":"张三",
"age":20,
"work":["程序员","送外卖"]
};
print(person);
print(person["name"]);
print(person["age"]);
print(person["work"]);
print(person["work"][0]);
// 第二种定义Map的方式
var p = Map();
p["name"] = "李四";
p["age"] = 22;
p["work"] = ["程序员","送外卖"];
print(p);
print(p["age"]);
Dart判断数据类型(使用is关键词来判断类型)
var str = '1234';
if(str is String){
print('是string类型');
}else if(str is int){
print('int');
}else{
print('其他类型');
}
var num = 123;
if(num is String){
print('是string类型');
}else if(num is int){
print('int');
}else{
print('其他类型');
}