dart - list.elementAt(n) 和 list[n] 之间有什么区别吗
问题描述
elementAt
在 Dart 中,使用和运算符访问列表元素有什么区别[]
吗?
var sensors = ["ir", "ultrasound", "laser"];
void main() {
print(sensors.elementAt(1));
print(sensors[1]);
}
解决方案
该.elementAt()
方法与Iterable
课程一起提供。它适用于所有可迭代对象,不仅是Lists
.
一些迭代可能有更有效的方法来查找元素,列表也是如此,使用括号表示法。
我所说的更高效是什么意思?
括号符号将隐式调用 .elementAt() 。括号符号没有任何额外的含义,只有易用性——正如许多人所说,它是一种“语法糖”。这就是我所说的效率。你可以用更少的打字来使用它。我不是指算法效率,比如在一个大文件中更快地找到元素List
或类似的东西。
此外,Dart 中的列表类似于许多语言中所谓的“数组”。这些老式语言使用括号表示法来标识数组元素。所以括号符号也是一种传统,它的目的是当你来自 Java 或 C# 等背景时,可以轻松地开始使用 Dart。
推荐阅读
- javascript - 逻辑运算符 JavaScript &&
- flutter - 仅控制一页的颤动页面浏览小部件或变量
- apache-spark - 提供的 Maven 坐标必须采用 'groupId:artifactId:version' PySpark 和 Kafka 的形式
- r - 将 dfm 转换为数据框
- python - pygame.mixer.init() 在加载文件时出现奇怪的错误
- python - 如何在遇到特定数据类型之前索引到列表中?
- typescript - 为什么我们要为编程语言编写一个额外的测试文件夹,它也可以在 src 文件夹中运行测试?
- javascript - 制表器的内部 API 是否有备忘单,例如类似于 cell.getData()?
- python-3.x - CentOS切换用户会话时找不到python3.8
- jquery - $(this).val() 在加载时复制