繁体   English   中英

.. 在 Dart 语言中是什么意思?

[英]What does .. means in dart language?

..在颤振项目中的 dart 语言中是什么意思?

考虑以下示例:

@override
void initState() {
  super.initState();
  _controller = AnimationController(
    duration: const Duration(milliseconds: 1000),
    vsync: this
  )..repeat();
// ^^ here

笔记:

发现stackoverflow里面没有对cascade operator的引用,所以我把问答加到stack本身可能对后人有帮助。

它称为级联运算符

例如,您可以像这样使用级联运算符,它提高了可读性

class User {
  
  double? id;
  
  String? name;

  void printName(){
    print(name ?? 'Name is Null');
  }
  
}

 // Instead of this

  User user = User();
  user.id = 5;
  user.name = 'Maverick';
  user.printName();
  
 // Using Cascade operator

  User user2 = User();
  user2
    ..id = 6
    ..name = 'Kenny'
    ..printName();


  // Another Example using cascade operator

  User user3 = User()..id = 7
                     ..name = 'Roger'
                     ..printName();
  

它被称为级联运算符,可以在官方文档中阅读

在简单的形式中,它表示调用该方法,但不是返回方法的返回值返回对象(类)的引用,而是调用它。

这里虽然repeat将在AnimationController上运行,但它会返回AnimationController引用以存储在_controller 它允许在其他可以访问_controller部分中访问和调用AnimationController另一个方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM