【Dart学习】--之Iterable相关方法总结

一,概述

  • 按顺序访问的值或元素的集合, List集合也是继承于Iterable
  • List和Set也是Iterable,dart:collection库中同样有很多
  • 部分Iterable集合可以被修改
    • 向List或Set添加元素将改变对象所有包含的元素。
    • 向Map添加新的Key会改变所有Map.keys的元素。
    • 在集合改变后,创建的迭代器将提供新的所有元素,并且可能会保持目前元素的顺序, 也可能不会

二,创建方式

  • 创建空的可迭代对象

    var ite = Iterable.empty();
    print(ite); // ()
  • 创建一个Iterable,通过序列来动态生成元素

    var ite1 = Iterable.generate(5);
    print(ite1); // (0, 1, 2, 3, 4)

  至于Iterable的所有属性和函数的介绍和使用,可参考List用法, 因为List是继承于Iterable的, 所以Iterable有的属性和方法List中都有

原文地址:https://www.cnblogs.com/lxlx1798/p/11371281.html

时间: 2024-08-01 13:06:16

【Dart学习】--之Iterable相关方法总结的相关文章

【Dart学习】--之Runes与Symbols相关方法总结

一,Runes 在Dart中,Runes代表字符串的UTF-32字符集, 另一种Strings Unicode为每一个字符.标点符号.表情符号等都定义了 一个唯一的数值 由于Dart字符串是UTF-16的字符序列,所以在字符串中表达32的字符序列就需要新的语法了 通常使用\uXXXX的方式来表示, 这里的XXXX是4个16进制的数, 如,心形符号(♥)是\u2665 对于非4个数值的情况,把编码值放到大括号中即可, 如,笑脸emoji (??) 是\u{1f600} String类有一些属性可以

【Dart学习】--Dart之数组(List)的相关方法总结

一,初始化List 非固定长度list var testList = List(); print(testList.length);//输出0 固定长度List var testList2 = List(2); print(testList2.length);//输出2 元素类型固定: var testList3 = List<String>(); testList3.add("哈哈哈"); //testList3.add(1);//报错,1不是String类型 直接赋值

【dart学习】-- Dart之函数

1. 指定返回值得函数 /** * 无返回值的函数 * params: 可以是任意类型(var和Object类型也可以任意类型). 当然这里的参数类型你可以随意指定我这里已dynamic为例 * 参数类型:你也可以指定var.Object等,再比如说你可以指定num, int,double, String.... * 如果我们对参数没有限制的话可以使用这个 */ void printDynamicParams(dynamic params){ print(params); } 主函数中我们调用p

[dart学习]第六篇:流程控制语句

经过前面的基础知识了解学习,我们今天可以进入语句模块啦. dart主要有以下流程控制语句: if-else for循环 while和do-while循环 break和continue switch-case assert 当然,你还可以使用 try-catch或throw (一)if-else dart的if(或者else if)的条件表达式必须为bool表达式,不能使用其他类型.dart的if-else用法与C语言类似,不再细述. int a = 6; if(a<0) { print("

【Dart学习】-- Dart之消息循环机制[翻译]

概述 异步任务在Dart中随处可见,例如许多库的方法调用都会返回Future对象来实现异步处理,我们也可以注册Handler来响应一些事件,如:鼠标点击事件,I/O流结束和定时器到期. 这篇文章主要介绍了Dart中与异步任务相关的消息循环机制,阅读完这篇文章后相信你可写出更赞的异步执行代码.你也能学习到如何调度Future任务并且预测他们的执行顺序. 在阅读这篇文章之前,你最好先要了解一下基本的Future用法. 基本概念 如果你写过一些关于UI的代码,你就应该熟悉消息循环和消息队列.有了他们才

dart学习一 windows环境安装dart环境

安装dart sdk https://dart.dev/get-dart 现在dart是2.3.1 可通过 Chocolatey 方式安装,或者直接下载安装包. 下载的安装包其实是个壳,通过壳需要另外下载其他文件,速度很慢. Chocolatey 类似 apt-get yum之类的包管理工具,不过Chocolatey 是在 win 下运行. https://chocolatey.org/ https://chocolatey.org/install Chocolatey 有个好处就是会管理升级这

【dart学习】-- Dart之基础语法

一,重要概念 所有你能够赋值给一个变量的都是一个对象,无论是变量,数字,函数等都是一个对象.所有的对象都是类的一个实例.所有的对象都继承自内置的Object类.这一点类似于Java语言“一切皆对象”. 虽然Dart是强类型语言,但是类型声明是可选项(即不是必须的),因为Dart可以自己去推断类型.这点与JS和Swift很类似.比如var number = 1,变量number就被推断为int类型.当你想明确说没有类型时,可以使用特殊类dynamic/object声明(详情下面会讲到). Dart

【dart学习】-- Dart之库的使用

(一)引用库 通过import语句在一个库中引用另外一个库的文件.需要注意以下事项 在import语句后面需要接上库文件的路径 对Dart语言提供的库文件使用dart:xx格式. 对第三方提供的库文件使用package:xx格式. import的例子如下: import 'dart:io'; import 'package:mylib/mylib.dart'; import 'package:utils/utils.dart'; void main(List<String> args){ }

【Dart学习】-- Dart之匿名方法&amp;闭包

一,匿名方法定义 (参数1,参数2,....){ 方法体... return 返回值 } 二,匿名方法特性 可赋值给变量,通过变量进行调用 可在其他方法中直接调用或传递给其他方法 void main(List<String> args) { //无参匿名函数 var func = () {  print("Hello");  }; func(); //有参匿名函数 var func1 = (str) {   print("Hello-------$str"