Sun's blog Sun's blog
首页
  • HTML
  • CSS
  • JavaScript基础
  • JavaScript高级
  • Git
  • Webpack
  • Vite
  • Vue
  • React
  • Node

    • Node基础
    • Nest
  • Flutter基础

    • 00.Dart环境搭建
    • 01.Dart入口注释变量常量命名规则
    • 02.Dart的数据类型详解int double String bool List Maps
    • 03.Dart运算符 条件表达式 Dart类型转换
    • 04.Dart循环语句 for while do while break continue多维列表循环
    • 05.Dart 集合类型List Set Map详解 以及循环语句 forEach map where any every
  • Go基础

    • Go语言基础
  • mongodb

    • mongodb
    • mongoose
  • mysql

    • mysql
    • sequelize
  • redis

    • redis
  • Linux
  • Nginx
  • 学习方法

    • 费曼学习法
    • 笔记方法
    • 提高学习效率的策略
    • 提高记忆的技巧
  • 前端常用

    • 常用网站
    • 常用的前端轮子
    • 面试问题
    • Markdown
  • 友情链接

    • 友情链接
  • 日语
  • 英语

    • 国际音标
    • 新概念第一册
  • 小滴课堂

    • 后端项目
    • 前端项目
    • 后台管理
    • Nuxt的基础使用
    • Linux安装环境
    • Node基础
GitHub (opens new window)

Sun Tang

何以解忧,唯有不断学习变强,强大才可以无惧一切!
首页
  • HTML
  • CSS
  • JavaScript基础
  • JavaScript高级
  • Git
  • Webpack
  • Vite
  • Vue
  • React
  • Node

    • Node基础
    • Nest
  • Flutter基础

    • 00.Dart环境搭建
    • 01.Dart入口注释变量常量命名规则
    • 02.Dart的数据类型详解int double String bool List Maps
    • 03.Dart运算符 条件表达式 Dart类型转换
    • 04.Dart循环语句 for while do while break continue多维列表循环
    • 05.Dart 集合类型List Set Map详解 以及循环语句 forEach map where any every
  • Go基础

    • Go语言基础
  • mongodb

    • mongodb
    • mongoose
  • mysql

    • mysql
    • sequelize
  • redis

    • redis
  • Linux
  • Nginx
  • 学习方法

    • 费曼学习法
    • 笔记方法
    • 提高学习效率的策略
    • 提高记忆的技巧
  • 前端常用

    • 常用网站
    • 常用的前端轮子
    • 面试问题
    • Markdown
  • 友情链接

    • 友情链接
  • 日语
  • 英语

    • 国际音标
    • 新概念第一册
  • 小滴课堂

    • 后端项目
    • 前端项目
    • 后台管理
    • Nuxt的基础使用
    • Linux安装环境
    • Node基础
GitHub (opens new window)
  • Flutter基础

    • 00.Dart环境搭建
    • 01.Dart入口、注释、变量、常量、命名规则
    • 02.Dart的数据类型详解int double String bool List Maps
    • 03.Dart运算符 条件表达式 Dart类型转换
    • 04.Dart循环语句 for while do while break continue多维列表循环
    • 05.Dart 集合类型List Set Map详解 以及循环语句 forEach map where any every
    • Flutter
    • Flutter基础
    Sun
    2024-05-08

    05.Dart 集合类型List Set Map详解 以及循环语句 forEach map where any every

    # 1. list

    /*
    List里面常用的属性和方法:
    
        常用属性:
            length          长度
            reversed        翻转
            isEmpty         是否为空
            isNotEmpty      是否不为空
        常用方法:  
            add         增加
            addAll      拼接数组
            indexOf     查找  传入具体值
            remove      删除  传入具体值
            removeAt    删除  传入索引值
            fillRange   修改   
            insert(index,value);            指定位置插入    
            insertAll(index,list)           指定位置插入List
            toList()    其他类型转换成List  
            join()      List转换成字符串
            split()     字符串转化成List
            forEach   
            map
            where
            any
            every
    
    */
    
    
    void main(){
    
      // List myList=['香蕉','苹果','西瓜'];
      // print(myList[1]);
    
    
      // var list=new List();  //新版本没法使用
      // list.add('111');
      // list.add('222');
      // print(list);
    
    
    //List里面的属性:
        // List myList=['香蕉','苹果','西瓜'];
        // print(myList.length);
        // print(myList.isEmpty);
        // print(myList.isNotEmpty);
        // print(myList.reversed);  //对列表倒序排序
        // var newMyList=myList.reversed.toList();
        // print(newMyList);
    
    //List里面的方法:
    
    
        // List myList=['香蕉','苹果','西瓜'];
        //myList.add('桃子');   //增加数据  增加一个
        // myList.addAll(['桃子','葡萄']);  //拼接数组
        // print(myList);
        //print(myList.indexOf('苹x果'));    //indexOf查找数据 查找不到返回-1  查找到返回索引值
    
    
        // myList.remove('西瓜');
        // myList.removeAt(1);
        // print(myList);
      
    
    
    
        // List myList=['香蕉','苹果','西瓜'];
        // myList.fillRange(1, 2,'aaa');  //修改
        // myList.fillRange(1, 3,'aaa');  
    
        // myList.insert(1,'aaa');      //插入  一个
        // myList.insertAll(1, ['aaa','bbb']);  //插入 多个
        // print(myList);
    
    
    
    
        // List myList=['香蕉','苹果','西瓜'];
        // var str=myList.join('-');   //list转换成字符串
        // print(str);
        // print(str is String);  //true
    
    
        var str='香蕉-苹果-西瓜';
        var list=str.split('-');
        print(list);
        print(list is List);
    
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90

    # 2. set

    //Set 
    
    //用它最主要的功能就是去除数组重复内容
    
    //Set是没有顺序且不能重复的集合,所以不能通过索引去获取值
    
    void main(){
    
      
      // var s=new Set();
      // s.add('香蕉');
      // s.add('苹果');
      // s.add('苹果');
      // print(s);   //{香蕉, 苹果}
      // print(s.toList()); 
    
    
      List myList=['香蕉','苹果','西瓜','香蕉','苹果','香蕉','苹果'];
      var s=new Set();
      s.addAll(myList);
      print(s);
      print(s.toList());
      
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24

    # 3. map

    /*
      映射(Maps)是无序的键值对:
    
        常用属性:
            keys            获取所有的key值
            values          获取所有的value值
            isEmpty         是否为空
            isNotEmpty      是否不为空
        常用方法:
            remove(key)     删除指定key的数据
            addAll({...})   合并映射  给映射内增加属性
            containsValue   查看映射内的值  返回true/false
            forEach   
            map
            where
            any
            every
    
    
    */
    
    void main(){
    
     
      // Map person={
      //   "name":"张三",
      //   "age":20
      // };
    
    
      // var m=new Map();
      // m["name"]="李四";  
      // print(person);
      // print(m);
    
    //常用属性:
    
        // Map person={
        //   "name":"张三",
        //   "age":20,
        //   "sex":"男"
        // };
    
        // print(person.keys.toList());
        // print(person.values.toList());
        // print(person.isEmpty);
        // print(person.isNotEmpty);
    
    
    //常用方法:
        Map person={
          "name":"张三",
          "age":20,
          "sex":"男"
        };
    
        // person.addAll({
        //   "work":['敲代码','送外卖'],
        //   "height":160
        // });
        // print(person);
    
    
    
        // person.remove("sex");
        // print(person);
    
    
        print(person.containsValue('张三'));
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70

    # 4. forEach map where any every

    /*
            forEach     
            map         
            where       
            any
            every
    */
    void main(){
    
    
          //  List myList=['香蕉','苹果','西瓜'];
          // for(var i=0;i<myList.length;i++){
          //   print(myList[i]);
          // }
    
    
          // for(var item in myList){
          //   print(item);
          // }
    
    
          // myList.forEach((value){
          //     print("$value");
          // });
    
    
    
    
          // List myList=[1,3,4];
          // List newList=new List();
          // for(var i=0;i<myList.length;i++){
          //   newList.add(myList[i]*2);
          // }
          // print(newList);
    
    
          // List myList=[1,3,4];      
          // var newList=myList.map((value){
          //     return value*2;
          // });
          // print(newList.toList());
    
    
          // List myList=[1,3,4,5,7,8,9];
          // var newList=myList.where((value){
          //     return value>5;
          // });
          // print(newList.toList());
    
    
    
          // List myList=[1,3,4,5,7,8,9];
          // var f=myList.any((value){   //只要集合里面有满足条件的就返回true
          //     return value>5;
          // });
          // print(f);
    
    
    
          // List myList=[1,3,4,5,7,8,9];
          // var f=myList.every((value){   //每一个都满足条件返回true  否则返回false
          //     return value>5;
          // });
          // print(f);
    
    
    
          // set
    
          // var s=new Set();
    
          // s.addAll([1,222,333]);
    
          // s.forEach((value)=>print(value));
    
    
    
          //map
    
           Map person={
              "name":"张三",
              "age":20
            };
    
            person.forEach((key,value){            
                print("$key---$value");
            });
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    编辑 (opens new window)
    上次更新: 2024/05/08, 17:54:31
    04.Dart循环语句 for while do while break continue多维列表循环

    ← 04.Dart循环语句 for while do while break continue多维列表循环

    最近更新
    01
    Node基础
    07-23
    02
    04.Dart循环语句 for while do while break continue多维列表循环
    05-08
    03
    03.Dart运算符 条件表达式 Dart类型转换
    05-08
    更多文章>
    Theme by Vdoing | Copyright © 2019-2024 Sun Tang | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式