美文网首页Flutter初探
Flutter/Dart - 集合类型List、Map详解

Flutter/Dart - 集合类型List、Map详解

作者: 沫之 | 来源:发表于2020-07-13 15:39 被阅读0次

    List详解,List里面常用的属性和方法

    List的定义

    • 第一种定义方法
    List myList = ['1', '2', '3'];
    print(myList);
    
    • 第二种定义方法
    var list = new List();
    list.add(1);
    list.add(2);
    list.add(3);
    print(list);
    

    List里面的方法属性

    • List里面的属性
    print(list.length);
    print(list.isEmpty);//判断数组是否为空
    print(list.isNotEmpty);//判断数组是否为空
    
    print(list.reversed);// 对列表倒序排序
    
    • List里面的方法
    List myList = ['1', '2', '3'];
    //添加
    myList.add('4');
    print(myList); //1,2,3,4
    
    myList.addAll(['5', '6']);
    print(myList); //1,2,3,4,5,6
    
    // 查找
    print(myList.indexOf('7')); //-1
    print(myList.indexOf('1')); //0
    
    // 删除
    myList.remove('1');
    print(myList); //,2,3,4,5,6
    myList.removeAt(0); //参数为索引值Í
    print(myList); //3,4,5,6
    
    // 修改
    myList.fillRange(1, 2, 'a');
    print(myList); //3,a,a,6
    
    // 指定位置插入
    myList.insert(1, 'b');
    print(myList); //3,b,a,a,6
    myList.insertAll(1, ['b', 'c']);
    print(myList); //3,b,c,b,a,a,6
    
    // 转换
    var str = myList.join('-');
    print(str); //3-b-c-b-a-a-6
    
    var list = str.split('-');
    print(list); //3,b,c,b,a,a,6
    

    Set定义集合

    • set是没有顺序且不能重复的集合,所以不能通过索引去获取值
    • 可以用来去除数组重复内容
    var s = new Set();
    s.add(1);
    s.add(2);
    print(s);// {1,2}
    print(s.toList());// [1,2]
    

    数组去重

    List myList2 = [1, 2, 4, 3, 2, 3, 23];
    var s = new Set();
    s.addAll(myList2);
    print(s.toList());
    

    Map详解,Map里面常用属性和方法

    Map的定义
    第一种定义方式

    var person = {
      "name": "张三",
      "age": 20,
    };
    

    第二种定义方式

    var person2 = new Map();
    person2["name"] = "李四";
    

    Map的属性

    print(person.keys.toList()); //[name,age]
    print(person.values.toList()); //['张三', 20]
    print(person.isEmpty);
    print(person.isNotEmpty);
    

    Map的方法

    // 添加属性
    person.addAll({
      "work": ['程序员', '外贸专家'],
      "height": 180,
    });
    
    // 移除属性
    person.remove("work");
    // 是否包含某个值
    person.containsValue("张三");
    // 是否包含某个key
    person.containsKey("work");
    

    相关文章

      网友评论

        本文标题:Flutter/Dart - 集合类型List、Map详解

        本文链接:https://www.haomeiwen.com/subject/aanacktx.html