自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 收藏
  • 关注

原创 dart操作符示例

需要注意的是,代码中的(t as Car).color = ‘RED’;然而,由于t是Taxi类型,它自然是Car类型,因此这里类型转换是合理的。这里使用as操作符进行类型转换,它假定t确实是Car类型,如果t不是Car类型,则会抛出异常。:先检查t是否实现了Car类型的接口,然后将t转换为Car类型并打印其运行时类型,结果是Taxi。:检查t是否实现了Car类型的接口,结果是true,因为Taxi是Car的子类。print(‘${y?

2024-09-20 10:44:43 267

原创 dart库示例12

writeAll([‘effeccient’,‘string’,‘creation’],’ ‘)…• writeAll([‘effeccient’,‘string’,‘creation’],’ ‘):将列表[‘effeccient’,‘string’,‘creation’]中的所有元素写入StringBuffer实例,元素之间用空格分隔。• write(‘Use a StringBuffer for’):向StringBuffer实例中写入字符串’Use a StringBuffer for’。

2024-09-20 10:35:59 329

原创 dart库示例11

使用正则表达式’Name’将string2中的’Name’替换为’bob’,并将结果赋值给string3。:分别打印字符串数组parts的第0、第1和第2个元素,分别是’structured’、‘web’和’apps’。:打印字符串’Never odd or even’中从索引6到索引9(不包括9)的子字符串,结果是’odd’。:打印字符串’Never odd or even’的第0个字符,即’N’。

2024-09-20 10:32:06 366

原创 dart库示例10

打印正则表达式a(r|n)(字符’a’后跟’r’或’n’)在str3中最后一次出现的位置索引(6)。:检查str1从索引1开始是否包含字符’D’,并打印结果(false),因为’D’在索引0。

2024-09-20 10:28:44 196

原创 dart库示例9

tryParse方法尝试将字符串解析为整数,并可以指定字符串的进制。这里尝试将字符串’64’解析为8进制整数,但由于’64’不是有效的8进制数(8进制数应该只包含0-7的数字),因此输出为null。这些输出展示了如何将整数转换为不同进制的字符串,以及如何解析不同进制和格式的字符串为整数和双精度浮点数。这里将字符串’42’解析为10进制整数,并将其赋值给变量a。这里尝试将字符串’64’解析为16进制整数,输出为100(16进制)。这里尝试将字符串’64’解析为10进制整数,输出为64。

2024-09-20 10:10:22 127

原创 dart库示例8

在Dart中,负数的位长度与它的正数对应值的位长度相同,因为它们在内存中的表示方式相同(使用补码形式)。因此,-4的位长度与4相同,输出为3。这段Dart代码演示了如何使用dart:core库中的int类的一些方法,这些方法用于检查整数的符号、位长度以及是否为偶数或奇数。这里打印数字4的位长度,4的二进制表示是100,需要3位,因此输出为3。这里打印数字1的位长度,1的二进制表示是1,需要1位,因此输出为1。这里打印数字-1的位长度,与1相同,输出为1。这里打印数字-3的符号,输出为-1。

2024-09-20 10:01:24 270

原创 dart库示例7

这个字符串表示一个完整的URI,包括方案(scheme)、主机(host)、端口(port)、路径(path)和片段(fragment)。注意,uri.origin打印出了包括端口号的来源,而使用构造函数创建的uri1没有显式指定端口,所以默认使用80(对于https)或443(对于http)端口,且在输出中不显示端口号。打印出URI的来源(origin),它是方案和主机的组合,这里是https://example.org:8080。使用Uri类的构造函数创建一个新的Uri对象uri1。

2024-09-20 09:55:23 163

原创 dart库示例6

调用Uri.encodeComponent方法对URI字符串中的组件进行编码。与Uri.encodeFull不同,Uri.encodeComponent会编码所有的保留字符和非法字符,包括URI组件分隔符。注意,Uri.encodeFull和Uri.encodeComponent方法在编码时对空格的处理不同。调用Uri.decodeComponent方法对之前编码的URI组件字符串进行解码。调用Uri.decodeFull方法对之前编码的URI字符串进行解码。定义了一个包含URI的字符串uri。

2024-09-20 09:52:17 190

原创 dart库示例5

这两行代码导入了必要的Dart库: • dart:core 是Dart语言的核心库,它包含了所有Dart程序都需要的核心功能。这些输出展示了如何使用dart:math库中的数学函数和常数,以及如何使用dart:core库中的Random类来生成随机数。调用nextInt方法,生成一个介于0(包含)到10(不包含)之间的随机整数,并打印结果。调用min函数,返回两个数中的较小值,这里是1和-1000,打印结果为-1000。调用max函数,返回两个数中的较大值,这里是1和1000,打印结果为1000。

2024-09-20 09:46:54 198

原创 dart库示例4

否则,默认为目录(这里没有显式检查是否为目录,但是因为除了文件,剩下的通常是目录或链接,代码假定不是文件就是目录),并打印出“发现目录”以及目录的路径。这两行代码导入了必要的Dart库: • dart:core 是Dart语言的核心库,它包含了所有Dart程序都需要的核心功能。运行这段代码将异步地列出当前工作目录中的所有文件和目录,并打印出它们的路径。这段Dart代码使用dart:io库来遍历当前工作目录中的所有文件系统实体(文件和目录),并对它们进行分类打印。这个流包含目录中的文件和子目录。

2024-09-20 09:41:41 257

原创 dart库示例3

3. 读取文件内容并打印。这段Dart代码演示了如何使用dart:io库来操作文件系统,以及如何使用dart:convert库来处理文件的编码和解码。main函数是Dart程序的入口点,async关键字表示这是一个异步函数,它允许使用await关键字。使用readAsLines方法读取文件内容为字符串列表,每行一个元素,并打印内容和列表长度。使用readAsString方法读取整个文件内容为字符串,并打印内容和长度。使用readAsBytes方法读取文件内容为字节列表,并打印内容和列表长度。

2024-09-20 09:36:33 388

原创 dart库示例2

DateTime.tryParse方法尝试解析一个表示日期和时间的字符串,如果解析成功,则返回一个DateTime对象,如果解析失败,则返回null。这里使用DateTime的构造函数创建了一个表示2000年1月1日的日期对象,并将其赋值给t1变量。这里使用DateTime的构造函数并指定了年、月、日,创建了一个表示2000年2月1日的日期对象,并将其赋值给t2变量。这些输出展示了如何创建和解析不同格式的日期和时间。2000-01-01 00:00:00.000Z // 2000年1月1日的UTC日期。

2024-09-20 09:31:53 70

原创 dart库示例1

dart:core是Dart语言的核心库,它包含了所有Dart程序都需要的核心功能,比如基础数据类型、集合等。这两行代码检查列表的第一个元素是否是Map类型(在Dart中,JSON对象被解码为Map),然后打印出这个Map中score键对应的值。这里定义了一个名为jsonStr的变量,它的值是一个字符串,表示一个JSON格式的数组,数组中包含两个对象,每个对象都有一个score属性。这里定义了一个名为score2的变量,它是一个包含三个Map的列表,每个Map代表一个对象。

2024-09-20 09:27:44 214

原创 dart 泛型编程示例5

在 main 函数中,创建了两个 Generic 类的实例,一个使用 BaseClass 作为类型参数,另一个使用 Extender 作为类型参数。• 类中有一个方法 toSTring(注意,这里应该是 toString,但是代码中写成了 toSTring,这可能是一个错误),该方法返回一个包含类型参数 T 的字符串。• 创建了一个 Generic 类的实例 extGen,这次类型参数 T 被指定为 Extender,它是 BaseClass 的子类。定义泛型类: class Generic {

2024-09-20 09:22:17 224

原创 dart 泛型编程示例4

first 函数是一个泛型函数,它能够接受任何类型的列表,并返回列表的第一个元素,其类型与列表中元素的类型相同。在 main 函数中,通过显式指定类型参数和依赖类型推断两种方式来调用 first 函数,分别处理了整数列表和字符串列表。• 第二次调用 first 函数时,没有显式指定类型参数,Dart 可以根据 stringList 的类型推断出正确的类型。• 第一次调用 first 函数时,显式指定了类型参数 ,表示期望返回的类型是 int。• 函数返回列表 ts 的第一个元素,其类型为 T。

2024-09-20 09:19:07 138

原创 dart 泛型编程示例3

Cache 抽象类定义了缓存操作的基本接口,而 cachePool 类提供了这个接口的具体实现,使用 Map 来存储键值对。在 main 函数中,创建了两个 cachePool 实例,一个用于整数,另一个用于字符串,演示了泛型类的灵活性和多态性。getByKey 方法接受一个字符串 key 并返回类型 T 的值,而 SetByKey 方法接受一个字符串 key 和一个类型 T 的值 val。• 创建了另一个 cachePool 的实例 stringMap,这次用于存储字符串类型的键值对。

2024-09-20 09:15:42 310

原创 dart 泛型编程示例2

ClassNme 类是一个泛型类,可以处理任何类型的对象,只要在实例化时指定了具体的类型。在 main 函数中,我们创建了一个处理字符串的 ClassNme 实例,并演示了如何使用它来操作字符串列表。• 类中有一个可空的泛型字段 t,它可以是任何类型。• method 是一个接受一个 List 类型的参数 ts 并返回类型 T 的方法。这行代码导入了Dart的核心库,它包含了Dart语言的基础功能,如字符串、数字、集合等。这里声明了一个名为 listVal 的字符串列表,并初始化为包含三个字符串的列表。

2024-09-20 09:11:28 98

原创 dart 泛型编程示例1

声明和初始化映射: var webSite = <String,String>{‘qq.com’:‘腾讯QQ’,‘aliyun.com’:‘阿里云’};Dart的集合类型提供了灵活的方式来处理数据。注释掉的行展示了声明集合的另一种方式,但实际使用的代码是通过构造函数Set()来创建一个空集合,并使用add方法添加了两个字符串元素。这行代码导入了Dart的核心库,它包含了Dart语言的基础功能,如字符串、数字、集合等。这里声明了一个名为name的变量,它是一个字符串列表,并初始化为包含三个字符串的列表。

2024-09-20 09:07:44 71

原创 dart异步编程44

• “Future发起的事件#2”、“事件2#a”、“事件2b”、“事件#2c”、“事件4”、“事件3”、“事件3a” 和 “事件3b”。• 在事件队列的下一个事件之前,处理由"事件2b"的.then方法安排的微任务,打印 “微任务0,来自于事件#2b”。• 第二个.then打印 “事件2b”,并安排一个微任务打印 “微任务0,来自于事件#2b”。• 处理微任务队列中的所有微任务,按顺序打印 “微任务#1”、“微任务2” 和 “微任务3”。• 这是main函数中的第一个操作,因此它是最先执行的打印语句。

2024-09-20 08:56:57 176

原创 dart的isolate示例3

• 在设置好监听器之后,它立即将新 isolate 的SendPort发送回主 isolate,以便主 isolate 可以与新 isolate 通信。• 使用Isolate.spawn异步创建一个新的 isolate,并将revPort.sendPort传递给新 isolate。• 当接收到一个SendPort时,它存储这个SendPort,并通过它发送消息’last Data’到新 isolate。这段Dart代码展示了如何使用dart:isolate库来创建一个新的 isolate 并与之通信。

2024-09-20 08:56:18 386

原创 dart的isolate示例2

使用Isolate.spawn方法创建一个新的Isolate,并将其作为Isolate对象isolate返回。在Dart中,Isolate是独立的执行上下文,它们可以在不同的进程中并行运行,而SendPort和ReceivePort是用于在不同的Isolate之间传递数据的通道。• if(revData is String && revData.toString().contains(‘任务完成’)):检查发送来的数据是否为字符串,并且是否包含’任务完成’。• print(‘新isolate完成’);

2024-09-19 10:14:53 561

原创 dart的isolate示例1

isolate = await Isolate.spawn(newIsolate, ‘执行耗时任务’);:使用Isolate.spawn方法创建一个新的Isolate,并将其作为Isolate对象isolate返回。:使用kill方法关闭新创建的Isolate,并设置优先级为Isolate.immediate,这意味着它会立即停止执行。void newIsolate(String arg):定义了一个名为newIsolate的函数,它接受一个字符串参数arg。• print(‘新isolate完成’);

2024-09-19 10:10:52 379

原创 dart函数示例9

这段Dart语言代码定义了一个名为msg3的函数,该函数可以接收四个参数,其中三个是可选参数,其中两个有默认值。这是因为每次调用msg3函数时,都会打印出发送者、消息内容和可选参数,如果有可选参数提供,则打印它们。注意,device参数有默认值,所以即使没有提供该参数,它也会打印默认值’pc’。device:可选参数,表示消息发送的设备。如果提供了这个参数,它的类型是String,默认值是’pc’。

2024-09-19 10:07:27 566

原创 dart函数示例8

这是因为每次调用msg2函数时,都会打印出发送者、消息内容和可选参数,如果有可选参数提供,则打印它们。注意,device参数有默认值,所以即使没有提供该参数,它也会打印默认值’phone’。

2024-09-19 10:04:47 458

原创 dart函数示例7

函数的目的是打印一条消息,如果提供了可选参数,也会打印这些参数。如果提供了这个参数,它的类型是String,默认值是null。这是因为每次调用msg1函数时,都会打印出发送者、消息内容和可选参数,如果有可选参数提供,则打印它们。void main():定义了Dart程序的入口点,main函数不接受参数,也没有返回值。

2024-09-19 10:00:05 298

原创 dart函数示例6

这段Dart语言代码定义了一个名为msg的函数,该函数可以接收三个参数,其中两个是必填参数,一个可选参数。函数的目的是打印一条消息,如果提供了可选参数,也会打印这些参数。这是因为每次调用msg函数时,都会打印出发送者、消息内容和可选参数,如果有可选参数提供,则打印它们。

2024-09-19 09:57:22 461

原创 dart函数示例5

这段Dart语言代码定义了一个名为printelm的函数,它接受一个整数类型的参数并打印该参数。然后,它定义了一个变量show,并将其赋值为printelm函数的引用。接着,它定义了一个整数列表list,并使用forEach方法来遍历列表中的每个元素,并打印它们。代码中展示了四种不同的方式来定义forEach方法的回调函数,包括使用变量、匿名函数和箭头函数。void printelm(int element):定义了一个名为printelm的函数,它接受一个整数类型的参数element,并打印该参数。

2024-09-19 09:51:31 339

原创 dart函数示例4

这是Dart语言中的一个标准库,它包含了最基础的功能,比如字符串、数字、集合等,无需显式导入即可使用。• static void bar(){}:定义了一个名为bar的静态方法,它没有参数,也没有返回值。这是因为函数引用是唯一的,即使它们指向同一个函数,但它们指向的实例不同,所以实例方法是不相等的。• void baz() {}:定义了一个名为baz的实例方法,它没有参数,也没有返回值。void foo() {}:定义了一个名为foo的函数,它没有参数,也没有返回值。:创建了另一个A类的实例w。

2024-09-19 09:48:54 178

原创 dart函数示例3

返回一个新的函数,该函数接受一个参数i(数字类型),并返回addBy + i的结果。这里的参数2表示addBy的值为2,所以add2是一个接收一个数字参数并返回这个数字加2的函数。Function makeAdder(num addBy):定义了一个名为makeAdder的函数,它接受一个参数addBy,其类型为num(数字类型),这个参数表示加法运算中要加上的值。这段Dart语言代码定义了一个函数makeAdder,该函数返回一个新函数,这个新函数能够接收一个数字并返回一个数字,即一个加法运算。

2024-09-19 09:45:58 235

原创 dart函数示例2

callback}):定义了一个名为prtProgress的函数,它接受一个可选的参数callback。这个参数是一个函数,它接受一个整数类型的参数,并且返回类型为void。,表示这个参数是可选的,可以不提供,或者提供一个Function(int)类型的对象。:这是Dart语言中的一个标准库,它包含了最基础的功能,比如字符串、数字、集合等,无需显式导入即可使用。这段Dart语言代码定义了一个名为prtProgress的函数,该函数接受一个可选的回调函数作为参数,并在执行过程中调用这个回调函数来打印进度。

2024-09-19 09:43:07 433

原创 dart 函数示例1

在main函数内部,紧接着myFunction()定义的下一行,有一个注释掉的print(insideFunction);这个语句试图打印myFunction函数内部的局部变量insideFunction的值,但由于它已经被函数体包裹,所以它是不可访问的,编译时会报错。这是因为myFunction函数的执行体中的print语句是按顺序执行的,输出之后,程序控制流返回到main函数,执行myFunction();这段Dart语言代码定义了一个顶层变量和一个函数,并在函数内部打印了不同作用域内的变量。

2024-09-19 09:40:25 355

原创 dart字符串扩展方法示例2

这个语句调用了一个名为parsingString的函数,该函数的参数是一个字符串’go’。然后,调用该函数返回的parsingString实例的doubleIt()方法,并将结果作为字符串的一部分打印出来。:同样,调用字符串扩展方法doubleIt(),将字符串’go’作为字符串的一部分打印出来。doubleIt()方法的作用没有在代码中直接给出,但是根据方法名可以推测它可能是将字符串内容加倍,即输出’gg’。第二个和第三个输出是字符串’go’通过doubleIt()方法加倍后的结果。

2024-09-19 09:37:22 735

原创 dart扩展字符串示例1

这个语句调用了一个名为parsingString的函数,该函数的参数是一个字符串’go’。然后,调用该函数返回的parsingString实例的doubleIt()方法,并将结果作为字符串的一部分打印出来。:同样,调用字符串扩展方法doubleIt(),将字符串’go’作为字符串的一部分打印出来。doubleIt()方法的作用没有在代码中直接给出,但是根据方法名可以推测它可能是将字符串内容加倍,即输出’gg’。第二个和第三个输出是字符串’go’通过doubleIt()方法加倍后的结果。

2024-09-19 09:31:38 135

原创 dart属性示例

定义了一个静态的数字类型的类属性z,并初始化为1.0。:这是Dart语言中的一个标准库,它包含了最基础的功能,比如字符串、数字、集合等,无需显式导入即可使用。表示如果尝试通过实例point访问类属性z,则会编译报错,因为类属性只能通过类名直接访问,不能通过实例访问。这段Dart语言代码定义了一个表示点的类Point,其中包含实例属性和类属性,并展示了如何在main函数中对这些属性进行访问和修改。这些输出分别对应于point实例的x属性、y属性,以及类Point的静态属性z的值。

2024-09-19 09:28:39 236

原创 dart方法示例3

定义了一个常量pi,用于表示圆周率π的近似值(通常我们会使用dart:math库中的pi常量,这里直接定义了一个近似值)。:定义了一个名为area的setter方法,它接受一个参数area,用于设置圆的面积。需要注意的是,setter方法中对半径的计算并不准确,因为π的值被近似为3.14,而实际上π的值是一个无理数,其近似值为3.141592653589793。这段Dart语言代码定义了一个表示圆的类Circle,并包含了一个属性area,这个属性有它自己的getter和setter方法。

2024-09-19 09:24:35 258

原创 dart方法示例2

static num distance(Point a, Point b):定义了一个名为distance的静态方法,它接受两个Point类型的参数a和b,用于计算这两个点之间的欧几里得距离。:通过类名Point调用静态方法distance,传入p1和p2作为参数,计算两点之间的距离,并将结果赋值给变量distance。:使用勾股定理计算两点之间的距离,即sqrt((dx^2) + (dy^2)),并返回结果。class Point:定义了一个名为Point的类,用于表示二维空间中的一个点。

2024-09-19 09:21:35 264

原创 dart 方法示例1

num distance(Point other):定义了一个名为distance的方法,它接受另一个Point类型的参数other,用于计算当前点与other点之间的欧几里得距离。:调用p1实例的distance方法,传入p2作为参数,计算两点之间的距离,并将结果赋值给变量distance。:使用勾股定理计算两点之间的距离,即sqrt((dx^2) + (dy^2)),并返回结果。这个值是sqrt(8),因为点p1和点p2在二维坐标系中形成一个直角边长为2的直角三角形,斜边长度即为两点之间的距离。

2024-09-19 09:18:49 147

原创 dart继承示例2

• Employee.fromJeson(Map json):super.fromJeson(json):定义了一个命名构造函数fromJeson(这里的Jeson是一个拼写错误,应该是fromJson),它接受一个类型为Map的参数json。• Person.fromJeson(Map json):定义了一个命名构造函数fromJeson(这里的Jeson是一个拼写错误,应该是fromJson),它接受一个类型为Map的参数json,用于从Map对象中提取信息并初始化Person实例的属性。

2024-09-19 09:15:46 153

原创 dart继承示例1

super.name和super.age是调用父类Person的构造函数,并将传入的参数分别赋值给name和age属性。Dart中的构造函数不会被子类继承,且类属性也不会自动被子类继承,但是子类可以通过super关键字访问父类的构造函数。:这是Dart语言中的一个标准库,它包含了最基础的功能,比如字符串、数字、集合等,无需显式导入即可使用。class Employee extends Person:定义了一个名为Employee的类,它继承自Person类。:定义了一个可选的整数属性age,表示人的年龄。

2024-09-19 09:08:39 286

原创 dart的CALL功能示例

这是Dart语言中的一个标准库,它包含了最基础的功能,比如字符串、数字、集合等,无需显式导入即可使用。• String call(String a, String b, String c):定义了一个方法,该方法接受三个字符串参数a、b和c,返回类型为String。这段Dart语言代码定义了一个名为wannableFunction的类,该类实现了一个call方法,使得其实例可以像函数一样被调用。b$c’:这是Dart中箭头函数的写法,表示该函数的实现是返回由参数a、b和c拼接而成的字符串。

2024-09-19 09:04:19 204

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除