flutter 开发中常用的list,map

最近打算开始写点东西,长期不写,感觉都不会写东西了,写写东西总不会有错,总是会对自己有点帮助的。开始学着写点东西,开始写的不好,相信写的多了会越来越好的。

开始用flutter 写项目了,没有系统和有条理的去学习和整理,总感觉是乱的。感觉有需要的东西还是写出来比较好,没事的时候可以回顾看看,以后也可以比较下自己有没有进步。

flutter 开发中常用到List 和 map,对于它的使用必须要清楚

List list = new List();
  list.add(true);
  list.add(100);
  list.add('a');
  list.add("华为");
  list.add("zhongxing");
  list[0]= "中国"; //修改值
  print(list);  //打印结果 [true, 100, a, 华为]

  print(list[0]); //打印第一个元素 true

  // for
  for (var value in list) {
    print(value);  // 循环打印 true 100 a 华为
  }

  //forEach
  list.forEach((f){
    print(f);      //循环打印 true 100 a 华为
  });

  //截取集合
  print("第一次截取的是");
  print(list.sublist(2)); //设定一个开始位置,默认为最后一个位置   [a, 华为, zhongxing]
  print("第二次截取的是");
//  print(list.sublist(2,list.length ));
  print(list.sublist(2,3)); //不包含最后一个位数 [a]

  var index = list.indexOf("华为");
  print("华为的位置是");
  print(index); // 3

 var isContain = list.contains("华为");
 print("是否存在这个元素");
 print(isContain); //true

//  list.elementAt(1);
  print("list中位置为1的元素");
  print(list.elementAt(1)); //100

  list.removeAt(1);//删除位置为1的元素

  list.remove("zhongxing");

  list.lastIndexOf("华为");

  print(list);

  print("join的用法");//join的用法好像是给每个元素凭借拼接一段数据
  print(list.join("华为"));  //中国华为a华为华为华为zhongxing


  //any
  List numList = [1,2,3,4];
  var any = numList.any((num) => num > 3);
  print(any); //只要有>3的任何元素,返回true

  //every
  var every = numList.every((num)=> num <5);
  print(every);//全部元素<5,返回true

  var one = numList.every((num)=> num <3);
  print(one);//全部元素<3,返回true,否则false

接着上面,接下来是map

 //map
  var mapTest = numList.map((f)=> f*5);
  print(mapTest); //转化成一个map
  print("mapTest的长度"+ mapTest.length.toString());
  mapTest.forEach((f){
    print(f);
  });
  print(mapTest.contains(15)) ;
  print(mapTest.elementAt(1)) ;

  var a = mapTest.toList();//转化成list
  print(a);

  //创建映射表
  var pp = { "a": 100,"b":true,"c":"yy","d":"today","e":"is","f":"a","g":"good","h":"day"};
  print(pp);
  pp["c"]= 5; //更改value
  print(pp.containsKey("today"));
  print(pp.containsValue("today"));
  pp.forEach((k,v){
    print(k+"=="+v.toString());  //类型不一样的时候就toString()
  });

  pp.remove("a");

  pp.keys.forEach((f){
    print(f); //打印所有的key
  });

  pp.values.forEach((f)=>print(f)); //打印所有的value

  //添加新元素 给不存在的key ,赋值
  pp.putIfAbsent("k", (){
    55;
  });
  print(pp);  //{b: true, c: 5, d: today, e: is, f: a, g: good, h: day, k: null}

  pp.putIfAbsent("o", ()=> "love" );
  print(pp); //{b: true, c: 5, d: today, e: is, f: a, g: good, h: day, k: null, o: love}



  Map scores = {'Bob': 36};
 for (var key in ['Bob', 'Rohan', 'Sophena']) {
  scores.putIfAbsent(key, () => key.length);
   }
   print(scores);

 //添加一个map
 pp.addAll(scores);  //{b: true, c: 5, d: today, e: is, f: a, g: good, h: day, k: null, o: love, Bob: 36, Rohan: 5, Sophena: 7}{b: true, c: 5, d: today, e: is, f: a, g: good, h: day, k: null, o: love, Bob: 36, Rohan: 5, Sophena: 7}

 print(pp);

你可能感兴趣的:(flutter 开发中常用的list,map)