从Dart列表中删除重复项的2种方法
生活随笔
收集整理的這篇文章主要介紹了
从Dart列表中删除重复项的2种方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本文向您展示了從 Flutter 中的列表中刪除重復項的 2 種方法。第一個適用于原始數據類型列表。第二個稍微復雜一些,但適用于map****列表或對象列表。
轉換為 Set 然后反轉為 List
這是一個簡單列表的簡單快速的解決方案。
例子:
void main(){final myNumbers = [1, 2, 3, 3, 4, 5, 1, 1];final uniqueNumbers = myNumbers.toSet().toList();print(uniqueNumbers);final myStrings = ['a', 'b', 'c', 'a', 'b', 'a'];final uniqueStrings = myStrings.toSet().toList();print(uniqueStrings); }輸出:
[1, 2, 3, 4, 5] [a, b, c]從map或對象列表中刪除重復項
我們的策略是將列表的每個項目轉換為 JSON 字符串,然后像第一種方法一樣使用toSet()和toList()。
例子:
import "dart:convert"; void main(){final myList = [{'name': 'Andy','age': 41},{'name': 'Bill','age': 43},{'name': 'Andy','age': 41}];// convert each item to a string by using JSON encodingfinal jsonList = myList.map((item) => jsonEncode(item)).toList();// using toSet - toList strategyfinal uniqueJsonList = jsonList.toSet().toList();// convert each item back to the original form using JSON decodingfinal result = uniqueJsonList.map((item) => jsonDecode(item)).toList();print(result); }輸出:
[{name: Andy, age: 41}, {name: Bill, age: 43}]總結
以上是生活随笔為你收集整理的从Dart列表中删除重复项的2种方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: flutter中本地存储shared_p
- 下一篇: 如何在Flutter(2021)中创建过