深圳开发公司网站,中装建设属于什么板块,爱名网22自助网站建设,建设工程有限公司起名List具有一定长度存在索引的对象集合(长度为0不存在索引,长度0存在索引)常见列表1、定长列表默认值null例如:List fixedLengthList new List(2)、List fixedLengthList new List(8)List fixedLengthList new List(2);for(int i0;i2;i){print(索引为${i}的值${…List具有一定长度存在索引的对象集合(长度为0不存在索引,长度0存在索引)常见列表1、定长列表默认值null例如:List fixedLengthList new List(2)、List fixedLengthList new List(8)List fixedLengthList new List(2);for(int i0;i2;i){print(索引为${i}的值${fixedLengthList[i]});}I/flutter ( 9251): 索引为0的值nullI/flutter ( 9251): 索引为1的值null固定长度不可修改List fixedLengthList new List(2);//改变固定数组长度fixedLengthList.length30;Unsupported operation: Cannot change the length of a fixed-length list大概意思:无法更改固定长度数组的长度List fixedLengthList new List(2);///执行添加数据操作fixedLengthList.add(0);fixedLengthList.add(1);List fixedLengthList new List(2);fixedLengthList[0]1;fixedLengthList[1]2;///添加数据fixedLengthList.addAll([3,4]);Unsupported operation: Cannot add to a fixed-length list大概以上: 不能添加数据到固定长度数组List fixedLengthList new List(2);//执行插入数据fixedLengthList.insert(0, 0);Unsupported operation: Cannot add to a fixed-length list大概意思: 不能添加数据到固定长度数组List fixedLengthList new List(2);///执行删除操作fixedLengthList.removeLast();List fixedLengthList new List(2);///执行删除操作fixedLengthList.removeAt(0);List fixedLengthList new List(2);fixedLengthList[0]1;fixedLengthList[1]2;///删除包含索引0和1范围内数据fixedLengthList.removeRange(0, 1);List fixedLengthList new List(2);fixedLengthList[0]1;fixedLengthList[1]2;///删除索引0-1,然后在进行替换删除索引值fixedLengthList.replaceRange(0, 1, [3,4]);Unsupported operation: Cannot remove from a fixed-length list大概意思:不能删除固定长度数组数据List fixedLengthList new List(2);///执行清除数据操作fixedLengthList.clear();Unsupported operation: Cannot clear a fixed-length list大概意思:不能清理固定长度数组数据可排序、替换、截取List fixedLengthList new List(2);fixedLengthList[0]1;fixedLengthList[1]2;///执行截取指定范围的数组fixedLengthList.sublist(0);///排序fixedLengthList..sort((a, b) a.compareTo(b));///fixedLengthList.setRange(0, 1, [3,4],0);///索引0-1范围的值不包括1,修改成3fixedLengthList.fillRange(0, 1,3);2、可增长列表可改变数组长度、 可执行添加、删除、可排序、可替换、可截取.可增长列表[]保留了内部缓冲区.缓冲区可增长.添加数据操作在固定时间内执行 (设置固定长度会花费与新长度成比例的时间,修改容量,添加操作将需要立即增加缓冲区容量).列表是可以迭代的.在执行列表操作时例如在调用forEach或sort期间通常不允许修改列表的长度(添加或删除元素).通过直接迭代列表或通过迭代由列表支持的Iterable更改列表的长度可以中断迭代List fixedLengthList [];//改变数组长度fixedLengthList.length2;///执行添加数据操作fixedLengthList.add(0);fixedLengthList.add(1);fixedLengthList[0]1;fixedLengthList[1]2;///添加数据fixedLengthList.addAll([3,4]);//执行插入数据fixedLengthList.insert(0, 0);///执行删除操作fixedLengthList.removeLast();///执行删除操作fixedLengthList.removeAt(0);///删除包含索引0和1范围内数据fixedLengthList.removeRange(0, 1);///删除索引0-1,然后在进行替换删除索引值fixedLengthList.replaceRange(0, 1, [3,4]);fixedLengthList.sublist(0);fixedLengthList..sort((a, b) a.compareTo(b));fixedLengthList.setRange(0, 1, [3,4],0);fixedLengthList.fillRange(0, 1,3);///执行清除数据操作fixedLengthList.clear();3、contains 过滤重复 添加(int、double、bool、String)类型数据1、int类型数组中插入重复数据List listInts [];void addIntData(int addValue){bool isContainerlistInts.contains(addValue);if(!isContainer){listInts.add(addValue);}print(数组长度${listInts.length});}I/flutter (28028): 数组长度1I/flutter (28028): 数组长度1I/flutter (28028): 数组长度12、double类型数组中插入重复数据List listDouble [];void addDoubleData(double addValue){bool isContainerlistDouble.contains(addValue);if(!isContainer){listDouble.add(addValue);}print(数组长度${listDouble.length});}I/flutter (28028): 数组长度1I/flutter (28028): 数组长度1I/flutter (28028): 数组长度1I/flutter (28028): 数组长度13、String类型数组中插入重复数据List listStrings [];void addStringData(String addValue){bool isContainerlistStrings.contains(addValue);if(!isContainer){listStrings.add(addValue);}print(数组长度${listStrings.length});}I/flutter (28028): 数组长度1I/flutter (28028): 数组长度1I/flutter (28028): 数组长度1I/flutter (28028): 数组长度14、boolean类型数组插入重复数据List listBool [];void addBoolData(bool addValue){bool isContainerlistBool.contains(addValue);if(!isContainer){listBool.add(addValue);}print(数组长度${listBool.length});}I/flutter (28028): 数组长度1I/flutter (28028): 数组长度1I/flutter (28028): 数组长度1I/flutter (28028): 数组长度1I/flutter (28028): 数组长度14、List对象去重class A{String a;int b;A(this.a, this.b);}1、要添加的对象A的每个值和数组里面存在的每个对象的值做比较 (效率低、适合少量数据去重)List listAs [];void addAData(A addValue){int lengthlistAs.length;if(length0){listAs.add(addValue);}else {for (int i 0; i length; i) {A a listAs[i];if (a.a ! addValue.a a.b ! addValue.b) {listAs.add(addValue);}}}print(数组长度${listAs.length});}2、List配合Set去除重复对象List listAs [];Set setAsnew Set();void addASData(A addValue){if(listAs.length0) {listAs.add(addValue);setAs.addAll(listAs);}else{listAs.add(addValue);}List listsetAs.toList();print(数组长度${list.length});}addASData(new A(a, 0));I/flutter (10386): 数组长度1I/flutter (10386): 数组长度1I/flutter (10386): 数组长度1I/flutter (10386): 数组长度1I/flutter (10386): 数组长度1I/flutter (10386): 数组长度1参考到此这篇关于Flutter List数组避免插入重复数据的实现的文章就介绍到这了,更多相关Flutter List 重复插入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家