03 Dart的数据类型详解 int double String bool List Maps

Dart中支持以下数据类型:

常用数据类型:

Numbers(数值):

  •  int
  • double

例程:

void main() {
  // int 必须是整型
  int a = 123;
  a = 45;
  print(a);

  // double 既可以是整型 也可是浮点型
  double b = 23.5;
  b = 24;
  print(b);

  // 运算符 + - * / %
  var c = a + b;
  print(c);
}

Strings(字符串)

  • String

        例程:

void main() {
  //1、字符串定义的几种方式
  // var str1 = 'this is str1';
  // var str2 = "this is str2";
  // print(str1);
  // print(str2);

  // String str1 = 'this is str1';
  // String str2 = "this is str2";
  // print(str1);
  // print(str2);

  // String str1 = '''this is str1
  // this is str1
  // this is str1
  // ''';
  //  print(str1);

  //   String str1 = """
  //   this is str1
  //   this is str1
  //   this is str1
  //   """;
  //  print(str1);

  //2、字符串的拼接
  String str1 = '你好';
  String str2 = 'Dart';
  // print("$str1 $str2");
  print(str1 + str2);
  print(str1 + " " + str2);
}

Booleans(布尔)

  • bool

例程:

void main() {
  // bool
  // 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');
  }
}

List(数组):

  • 在Dart中,数组是列表对象,所以大多数人只是称它们为列表

例程:

void main(){
  // 第一种定义List的方式
   /*
    var l1 = ['aaa','bbbb','cccc'];
    print(l1);
    print(l1.length);
    print(l1[1]);
   */

  // 第二种定义List的方式
   /*
    var l2 = new List();
    l2.add('张三');
    l2.add('李四');
    l2.add('王五');
    print(l2);
    print(l2[2]);
   */

  // 定义List时,指定类型
  var l3 = new List<String>();
  l3.add('张三');
  // l3.add(123);  // 报错:123是int类型,不是预定义的String类型
  print(l3);
}

Maps(字典):

  • 通常来说,Map 是一个键值对相关的对象。 键和值可以是任何类型的对象。每个 键 只出现一次, 而一个值则可以出现多次

例程:

void main(){
  //第一种定义 Maps 的方式
   /*
    var person = {
        "name":"张三",
        "age":20,
        "work":["程序员","送外卖"]
    };
    print(person);
    print(person["name"]);
    print(person["age"]);
    print(person["work"]);
   */

  //第二种定义 Maps 的方式
    var p = new Map();
    p["name"] = "李四";
    p["age"] = 22;
    p["work"] = ["程序员", "送外卖"];
    print(p);
    print(p["age"]);
}

类型判断   is

void main(){
   /*
    var str='1234';
    if(str is String){
        print('是string类型');
    }
    else if(str is int){
        print('int');
    }
    else{
        print('其他类型');
    }
   */

    var str = 123;
    if (str is String){
        print('是string类型');
    }
    else if (str is int){
        print('int');
    }
    else{
        print('其他类型');
    }
}

项目中用不到的数据类型 (用不到):

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(new String.fromCharCodes(input));
  }

Symbols

  • Symbol对象表示在Dart程序中声明的运算符或标识符。您可能永远不需要使用符号,但它们对于按名称引用标识符的API非常有用,因为缩小会更改标识符名称而不会更改标识符符号。要获取标识符的符号,请使用符号文字,它只是#后跟标识符:
  • 在 Dart 中符号用 # 开头来表示,入门阶段不需要了解这东西,可能永远也用不上。
  • http://dart.goodev.org/guides/libraries/library-tour#dartmirrors---reflection

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值