如果這是一個非常愚蠢的問題,我很抱歉,但我想知道如何從顫振的物件陣列串列中提取單個資料
我的代碼
class Bank {
late String name;
late String nameBank;
Bank({required this.name, required this.nameBank});
}
void main() {
var bankMap = listBank.map((d) {
return {"name": d.name};
}).toList();
print(bankMap);
}
List listBank = [
Bank(name: 'Bank 1', nameBank: 'Bank 1'),
Bank(name: 'Bank 2', nameBank: 'Bank 2')
];
我只想提取名稱:'Bank 1'。謝謝!
我嘗試像普通陣列一樣添加 [] 但出現錯誤
uj5u.com熱心網友回復:
先檢查這個元素是否存在,避免出錯
你需要做一個回圈并檢查你需要的值是否在串列中
listBank.forEach((element) {
if(element == 'DATA YOU WANT'){
// YOUR CODE HERE
}
});
另一種方法是檢查陣列是否包含特定元素
listBank.contains(element);
使用喜歡
if (ordersWidgets.contains(element)){
// 陣列包含該值 }
現在得到你的價值
listBank.forEach((element) {
if(element == 'DATA YOU WANT'){
var p = listBank[listBank.indexOf(element)];
}
});
uj5u.com熱心網友回復:
根據某種條件只找到一個元素。
var bank1 = listBank.firstWhere((bank) => bank.name == 'Bank 1');
請注意,如果沒有元素匹配,它將引發錯誤。
uj5u.com熱心網友回復:
通過使用找到另一個解決方案
class Bank {
late String name;
late String nameBank;
Bank({required this.name, required this.nameBank});
}
void main() {
Iterable visibleNames = listBank.where((nama) {
return nama.nameBank.contains('Bank A');
});
visibleNames.forEach((nama) => print(nama.name));
}
// Need 'Iterable visibleNames' to see the data or the data won't print
// Iterable variable = listVar.where((newVar) {
// return newVar.getterInListVar.contains('whatWeWantToSearch');
// });
List listBank = [
Bank(name: 'Bank 1', nameBank: 'Bank A'),
Bank(name: 'Bank 2', nameBank: 'Bank B')
];
說明https://www.youtube.com/watch?v=y-sfrhq8Q_I
謝謝大家!
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/528727.html
標籤:数组扑列表镖目的
上一篇:當值為陣列時獲取鍵
