我想知道是否有一種簡單的方法來結合飛鏢中的兩個列表來創建一個全新的列表對象。我找不到任何東西或類似的東西:有沒有簡單的方法來結合Dart中的兩個列表?
var newList = list1 + list2;
無效。
我想知道是否有一種簡單的方法來結合飛鏢中的兩個列表來創建一個全新的列表對象。我找不到任何東西或類似的東西:有沒有簡單的方法來結合Dart中的兩個列表?
var newList = list1 + list2;
無效。
您可以使用:
var newList = new List.from(list1)..addAll(list2);
Alexandres的回答是最好的,但如果你想使用+就像在你的例子中,你可以使用飛鏢運算符重載:
class MyList<T>{
List<T> _internal = new List<T>();
operator +(other) => new List<T>.from(_internal)..addAll(other);
noSuchMethod(inv){
//pass all calls to _internal
}
}
然後:
var newMyList = myList1 + myList2;
有效:)
也許更一致〜
var list = []..addAll(list1)..addAll(list2);
啊,謝謝,完美的作品。 – Alex
另一種方法(允許輕鬆連接多個列表):'[list1,list2,list3,...]。expand((x)=> x).toList()'; –