number类型

Dart为了简化类型,数字型只搞了2种:int和double。这点很赞,少牺牲很多脑细胞。

int占8个字节,相当于Java的Integer和Long的合体;double也占8个字节,相当于Java的Float和Double的合体。

var age = 30;
print(age.runtimeType); //int
var price = 99.99;
print(price.runtimeType);//double

它们可以和String相互转换:

var age = int.parse("30");
var price = double.parse("11.22");
//int转double
print(age.toDouble());
//转为string
print(price.toString());
print(3.1415926.toStringAsFixed(2)); //保留2位小数

intdouble都继承于num类。

String类型

Dart作为一门现代化的编程语言,它的String也是现代化的,和Kotlin类似。

可以使用''或者""来声明String,它们是完全等价的:

var a = "abc";
var b = 'abc';
print(a==b);//true

字符串插值也是支持的,可以在String中插入变量:

var name = "lxj";
var age = 20;
print("hello everyone, my name is $name, my age is $age");

原始字符串(raw string)也是支持的,可以使用三个引号'''或者"""来声明:

var words1 = '''
    床前明月光,
    疑是地上霜;
    ''';
print(words1);
var words2 = """
    举头望明月,
    低头思故乡。
    """;
print(words2);

另外一种声明原始字符串的方式是使用r放在字符串前面,这点借鉴了Python的语法:

print(r"原样输出:\r \t \n \n");

布尔类型

Dart的bool有2个值:true和false,这和大多数语言一样。

var name = 'abc'.isEmpty;
print(name);
var is996 = true;
print(is996);
var nan = 0 / 0;
print(nan.isNaN); //true
更新时间: 4/27/2019, 8:54:35 PM