Dart基础第二篇:Dart的常用数据类型


/**
 * Dart常用数据类型
 */
void main(){

  /**
   *  Number 数值类型
      int
      double

      String 字符串类型
      String

      Boolean 布尔类型
      boolean

      List 数组类型
      在Dart中,数组是列表对象,所以大多数人称他为列表 和java类似

      Maps 字典类型
      键值对
   */

  /**
   * 1、字符串定义的几种方法 字符串可以使用单引号和双引号 建议指定字符串类型String 用三个引号可以换行输出(可以单引号或双引号)
   */
  var str1 = "str";
  var str2 = 'str2';
  print(str1);
  print(str2);
  String str3 = "str3";
  String str4 = 'str4';
  print(str3);
  print(str4);
  String str5 = '''123
456
789
                 ''';

  String str6 = """
  aaa
  bbb
  ccc""";
  print(str5);
  print(str6);


  /**
   * 2、字符串拼接
   */

  String str7 = " Hello";
  String str8 = "World";
  print("$str7 $str8");
  print(str7+" "+str8);


  /**
   * 3、字符串截取
   */
  String str9 = str1+str2;
  print(str9.trim().substring(0,str9.length-1));




  /**
   * 数值类型的定义 可自动向上转型 不可向下转型!
   */

  int num = 10;
  double price = 20.5;
  print(num);
  print(price);

  double price2 = 20;
  print(price2);


  /**
   * List
   */
  List list1 = ['香蕉','苹果','西瓜'];

  //取值 可以通过下标取值
  print(list1[0]);

  //一般定义List的方法
  var list = new List();
  list.add("123");
  list.add(456);
  print(list);

  var i = list.length;
  print("数组的长度:"+"$i");
  print("数组是否为空:"+list.isEmpty.toString());
  print("数组是否不为空:"+list.isNotEmpty.toString());
  //只调用list.reversed方法的话 不是List格式 是()的格式 要转换成List
  print("倒序排序"+list.reversed.toList().toString());


  //只能添加一个数据
  list.add("桃子");
  //可以添加一个数组过去 也叫拼接数组
  list.addAll(['葡萄','椰子','?']);
  print(list);
  //根据值取下标 取不到返回-1 取到返回下标值
  print(list.indexOf('桃子'));
  //根据值删除list
  print(list.remove("?"));
  print(list);
  //根据下标删除list
  list.removeAt(list.length-1);
  print(list);
  //根据下标起始和结束下标修改值
  list.fillRange(1, 3,['被修改的值']);
  print(list);
  //根据下标插入值 在下标之前插入
  list.insert(1, "在下标为1的前边插入的值");
  print(list);
  //根据下标插入多个值 在下标之前插入
  list.insertAll(1, ['插入多个值','插入多个值']);
  print(list);
  //转换成String
  print(list.join());
  //转换成String并已','分割
  var str = list.join(",");
  print(str);
  //转换成list(也叫数组)
  print(str.split(","));



  /**
   * 定义Map的几种方式
   */
  var person = {
    'name':'张三',
    'age':15
  };

  var m = new Map();
  m['name'] = '李四';
  m['age'] = 19;

//  print(person);
//  print(m);

  /**
   * Map的常用属性
   */
  //获取所有的key
  print(person.keys.toList());
  //获取所有的value
  print(person.values.toList());
  //判断是否为空
  print(person.isEmpty);
  print(person==null);
  print(person.isNotEmpty);
  print(person!=null);
  //获取Map的长度
  print(person.length);

  /**
   * Map
   */
  //addAll的方法
  person.addAll({
    'work':'coder',
    'like':'篮球'
  });
  print(person);

  //remove方法
  person.remove('like');
  print(person);

  //根据key来查找数据 返回布尔类型
  print(person.containsKey('work'));

  //根据value来查找数据 返回布尔类型
  print(person.containsValue('篮球'));




  /**
   * Set
   * 是一个不可重复的Map
   */
  var s = new Set();
  s.add("香蕉");
  s.add("苹果");
  print(s);
  //转换成List的方法
  print(s.toList());

  //给一个List进行去重的方法
  List newList = ['香蕉','苹果','香蕉','水蜜桃','香蕉','香蕉','香蕉','香蕉','香蕉'];
  var s1 = new Set();
  s1.addAll(newList);
  print(s1.toList());





}
发布了66 篇原创文章 · 获赞 36 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/u013600907/article/details/99678062