Flutter中如何将嵌套列表内所有数值除以2.54
处理Flutter嵌套列表的厘米转英寸操作
要把嵌套列表里的所有厘米数值转换为英寸(除以2.54),有两种常用实现方式,可根据需求选择:
1. 原地更新原列表
直接修改原始列表中的每个数值,适合不需要保留原始数据的场景:
// 遍历外层列表的每个子列表 boyHeadCircumferenceData.forEach((subList) { // 遍历子列表中的每个数值,替换为转换后的值 for (int i = 0; i < subList.length; i++) { subList[i] = subList[i] / 2.54; } });
2. 生成转换后的新列表(推荐)
创建一个全新的嵌套列表,保留原始数据不变,适合需要同时使用原始数据和转换后数据的场景:
// 给列表指定明确类型(可选但推荐,提升类型安全性) List<List<double>> boyHeadCircumferenceData = [ // 你的原始数据... ]; // 生成转换后的新列表 List<List<double>> convertedHeadCircumferenceData = boyHeadCircumferenceData .map((subList) => subList.map((cmValue) => cmValue / 2.54).toList()) .toList();
补充说明
- 第二种方式用Dart的
map方法完成转换:先将每个子列表的数值转为英寸,再通过toList()转为列表,最后外层再转一次列表得到最终嵌套结构。 - 如果原始列表未指定类型,建议添加
List<List<double>>声明,避免后续操作出现类型错误。
内容的提问来源于stack exchange,提问作者Nikunj Ramani
相关产品推荐
相关产品推荐

