List<int> l1=[1,2,3]; List<int> l2=[1,2,3]; expect (l1,l2);
這是我在 Flutter 單元測驗中使用的代碼。
即使兩個串列的內容相同,我也無法通過測驗。我無法在 Flutter 單元測驗中找到使用 Equatable 比較串列的用例。有人可以幫忙嗎?謝謝!
uj5u.com熱心網友回復:
您可以使用ListEquality().equals()方法來檢查兩個List是否相等。
import 'package:collection/collection.dart';
List<int> l1 = [1,2,3];
List<int> l2 = [1,2,3];
final bool equal = ListEquality().equals(l1, l2):
expect(equal, true);
uj5u.com熱心網友回復:
串列相等在 Dart 中的作業方式不同。由于一切都是物件,因此您需要一種機制來檢查每個元素。
ListEquality如果兩個串列沒有嵌套物件/資訊,您可以使用該類來比較兩個串列,或者,如果您想比較嵌套物件/資訊,您可以使用DeepCollectionEquality. 兩者都來自與 Dart 一起開箱即用的集合庫。
您可以查看以下用法示例:
import 'package:collection/collection.dart';
void main() {
const numberListOne = [1,2,3];
const numberListTwo = [1,2,3];
final _listEquality = ListEquality();
print(_listEquality.equals(numberListOne, numberListTwo));
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/447566.html
