簡體   English   中英

作為可選構造函數參數的列表是 Dart 中的 null

[英]List as optional constructor parameter is null in Dart

在下面的例子中,當沒有參數傳遞給構造函數時,為什么myList null

我在 class 中將其聲明為空(可增長)列表。

class MyListClass {
  List myList = [];

  MyListClass({this.myList});
}

void main() {
  final obj = MyListClass();
  assert(obj.myList != null);
}

傳遞可選列表但默認為空列表的最佳方法是什么?

我知道您可以執行以下操作,但也許有更好的方法?

MyListClass({this.myList}) {
  this.myList ??= [];
}

UDATE:這是預期的行為, null如果未根據給出值,則為默認值。

編輯:使用初始化器:

class MyListClass {
  List myList;

  MyListClass({List list}) : myList = list ?? [];
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM