Flutter学习-03-dart语法学习(中)
- 本文主要介绍dart中方法的使用。
1. dart方法和箭头函数
dart中方法,方法也是一个对象。当方法的执行语句只有一句的时候,可以是由箭头函数=>表达式
方法的返回值和参数类型可以省略
我们也可以也这样的方式简洁,也可以配合三目运算
sum1 (a,b) => a+b;
sum1(a,b) => a==b?a-b:a+b;
2.dart方法中的可选参数
可选参数:传递参数的时候必须带上形参的名字
我们在方法中添加可选参数时,用{}表示,并添加名字
参数b和c表示是动态的

我们告诉编译器,处理了后面为空的情况.如果我们不给默认值的话,因为是可选的所以我们不一定是必填的,我们可以选择不写,但是会报错
我们也可以指定类型,但是也要做非空判断
我们不用?非空判断的话可以直接赋值默认值
我们也可以不带形参名,可以指定默认赋值,调用的时候就不能指定参数了,只能按顺序赋值。

3.dart中匿名方法
没有方法名称的方法下面的方法中1和2效果相同,3没有调用相当于。
4.dart中方法作为参数传递
方法也是一个对象,可以赋值一个变量,我们可以直接调用这个变量,当方法有返回方法时
我们定义一个数组,打印里面的元素,类似我们iOS中的for循环和enumerateObjectsUsingBlock 。
我们把函数作为参数传递的话类似block闭包。list.forEach(print)中我们把print方法作为参数传递进去。
底层实现也是for in循环执行我们传入的方法,我们自定义一个类似的

我们也可以把匿名函数作为参数进行传递

5. dart方法中的闭包
定义在函数里面的函数就是闭包,闭包也是一个对象
闭包的作用:可以访问外部函数的局部变量。
以上就是源于dart中方法的使用。
转载自:https://juejin.cn/post/7023213920278020132