一、dart语言(数据类型,集合)

2021-03-24  本文已影响0人  大虾啊啊啊
/**
 * 1.hello word
 */
main(List<String> args) {
  print("hello dart");
  //2.定义变量
  String name = "小明";
  int age = 18;
  double height = 1.88;
  print('name = ${name} and age = ${age} and height = ${height}');
  //3.类型推导
  //3.1 var的使用
  var myName = "小红";
  //获取当前变量的类型
  print(myName.runtimeType);
  //3.2 dynamic的使用
  //如果想改变变量的类,可以使用dynamic
  dynamic youName = "小王";
  print(youName.runtimeType);
  youName = 12;
  print(youName.runtimeType);
  //3.3 final&const的使用
  //他们俩都表示常量,
  //区别在于const在编译期间就确定了值
  //而finale可以在运行时确定值
  //所以  const name = getName(); // 错误的做法, 因为要执行函数才能获取到值
  // final name = getName(); // 正确的做法
  final finalName = "cody";
  const constName = "youdy";
  print('finalname = ${finalName} and constName = ${constName}');
  //4.数据类型
  //4.1数字类型
  //整型int 浮点型double
  //Dart中的int和double可表示的范围并不是固定的,它取决于运行Dart的平台。
  int myInt = 12;
  double myDouble = 12.22;
  //类型转换
  String myStr1 = myInt.toString();
  String myStr2 = myDouble.toString();
  int a = int.parse(myStr1);
  double b = double.parse(myStr2);

  print(
      "myInt = ${myInt} and myDouble = ${myDouble} and myStr1 = ${myStr1} and myStr2 = ${myStr2} and a = ${a} and b = ${b}");
  //4.2布尔类型
  bool flag = false;
  var isFlag = true;
  print('flag = ${flag} and isFlag = ${isFlag}');
  if (isFlag) {
    print('这是真的');
  }
  //4.3字符串类型
  String str = "你好";
  var str2 = "世界";
  print('str = ${str} and str2 = ${str2}');

// 表示多行字符串的方式
  //直接表示多行
  var message1 = '''
哈哈哈
呵呵呵
嘿嘿嘿''';
  print(message1);
  //4.4集合类型
  //对于集合类型,Dart则内置了最常用的三种:List / Set / Map。
  //4.4.1 List
  //使用类型推导
  var letters = ['a','b','c'];
  print('${letters}');
  //使用明确类型
  List<int> numbers = [1,2,3];
  print('${numbers}');
  //4.4.2使用Set
  //使用set也就是把[] 改成{ }
  var sets1 = {"a","b","c"};
  Set<int> sets2 = {1,2,3};
  print('sets1 = ${sets1} and sets2 = ${sets2}');
  //4.4.3 使用map
  var map1 = {"name":"小红","age":12};
  Map<String,String> map2 = {"name":"小明","sex":"男"};
  print('map1 = ${map1} and map2 = ${map2}');
  //4.4.4集合的操作
  //1.获取集合的长度
  print(numbers.length);
  print(sets2.length);
  print(map2.length);
  //2.添加,删除,包含元素
  numbers.add(2);
  sets2.add(3);
  numbers.remove(1);
  sets2.remove(2);
  numbers.contains(2);
  sets2.contains(3);
  //3.map的操作
  //根据key取值
  print(map2["name"]);
  //获取所有的entries
  print("${map2.entries}");
  //获取所有的keys
  print("${map2.keys}");
  //获取所有的value
  print("${map2.values}");
  //判断是否包含某个key或者value
  print('${map2.containsKey("name")}');
  print('${map2.containsValue("男")}');
  //根据key删除元素
  map2.remove("name");
  print('${map2}');
}

上一篇下一篇

猜你喜欢

热点阅读