Flutter - Dart中(.)、(..)、(...)语法使用

一、1个点(.)

「.」返回的则是该方法返回的值 。

二、2个点(..)

「..」意思是 「级联操作符」,为了方便配置而使用。「..」和「.」不同的是 调用「..」后返回的相当于是 this, 可以实现对一个对象的连续调用

例子:有一个对象People,调用People里面的方法然后将People返回

class TestDemo {

  // 正常写法
  People printPeople() {
    var p = People();
    p.a();
    p.b();
    p.c();
    return p;
  }

  // 级联写法
  People printPeople() {
    return People()..a()..b()..c();
  }
}


class People {

  a() { print("===a") }

  b() { print("===b") }

  c() { print("===c") }
}

这样就能省去变量创建,实现链式调用

三、3个点(...)

...用来拼接集合,如List,Map等

class TestDemo {

  TestDemo() {
    
    var list2 = ['d', 'e', 'f'];
    var list = ['a', 'b', 'c', ...list2];
    // 打印结果:
    // 这里组合后 list就变成[ 'a', 'b', 'c','d', 'e', 'f']

 
    var map2 = {'a': 'a', 'b': 'b'};
    var map = {...map2, 'c': 'c', 'd': 'd'};
    // 打印结果:
    // 这里组合后map就变成{'a': 'a', 'b': 'b','c': 'c', 'd': 'd'}

  }

}

谢谢关注

你可能感兴趣的:(Flutter,flutter,前端,级联操作符,拼接集合)