Dart语法大全

1.基础篇

dart:core

  • 打印到控制台

    1
    print('Hello World!');
  • 定义数值
    int(整数64位2^63)、double(浮点数64位)、num(整数或浮点数)这些类都可以定义数值,注意这是类,若没有初始化将=null

    1
    2
    3
    int a = 1;
    double b = 1.2;
    num c = 1;

    定义16进制

    1
    int d = 0xff; // ==255

    定义双精度浮点数

    1
    double e = 1.23e9; // ==1230000000.0

    dart2.1开始,整数会自动转换为浮点数

    1
    double f = 1; // ==1.0

    字符串与数值互转

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    //String 2 int
    int g = int.parse('1');

    //String 2 double
    double h = double.parse('1.22');

    // int 2 String
    String i = 234.toString();

    // double 2 String 保留两位
    String j = 12.445.toStringAsFixed(2);

    位运算右移<<、左移>>,或|、与&

    1
    2
    3
    4
    int k = 3 << 1; // 0011 << 1 == 0110
    int l = 3 >> 1; // 0011 >> 1 == 0001
    int m = 3 | 4; // 0011 | 0100 == 0111
    int n = 3 & 4; // 0011 & 0100 == 0000
  • 定义字符串
    是一系列UTF-16代码单元,可以使用单引号'、双引号"来创建字符串

    1
    2
    3
    4
    String s1 = 'Hello World';
    String s2 = "Hello rhyme";
    String s3 = 'I\'m a man';
    String s4 = "You talk about \"Dart lang\"";

    可以使用==进行字符串对比

    1
    print(s1 == s2); // false

    可以使用$${}插入表达式的值到字符串

    1
    2
    print('s1 = $s1');// s1 = Hello World
    print('s1 = ${s1.toString()}');// s1 = Hello World

    可以用+号进行字符串拼接

    1
    print(s1 + ' ' + s2);//Hello World Hello rhyme

    可以使用'''"""创建多行字符串

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    String s5 = '''My name is
    rhyme''';
    print(s5);
    //My name is
    //rhyme
    String s6 = """My age is
    24""";
    print(s6);
    //My age is
    //24

    可以添加r创建原始字符串

    1
    2
    3
    String s7 = r'In a raw string, not even \n gets special treatment.';
    print(s7);
    //In a raw string, not even \n gets special treatment.
  • const关键字
    定义一个编译时常量

    1
    2
    3
    const cNum = 0;
    // const cNum; //这种会报错
    // const cNum = null; //这种编译通过

    必须声明初始值

    1
    2
    const cNum; //这种会报错
    const cNum = null; //这种编译通过

    初始值若是另一个常量,必须也是编译时常量

    1
    2
    3
    4
    5
    6
    7
    8
    const cNum = 1;
    const cString = 'cNum is $cNum';//编译通过
    // final fNum = 1;
    // const cString = 'fNum is $fNum'; 编译不通过
    // var vNum = 1;
    // const cString = 'vNum is $vNum'; 编译不通过
    // int num = 1;
    // const cString = 'num is $num'; 编译不通过

评论系统未开启,无法评论!