小常识,大应战!本文正在参加“程序员必备小常识”创造活动。

  • 本文主要介绍dart中办法的运用。

1. dart办法和箭头函数

dart中办法,办法也是一个目标。当办法的执行句子只有一句的时分,能够是由箭头函数=>表达式

Flutter学习-03-dart语法学习(中)
办法的回来值和参数类型能够省略

Flutter学习-03-dart语法学习(中)
咱们也能够也这样的方式简洁,也能够配合三目运算

sum1 (a,b) => a+b;
sum1(a,b) => a==b?a-b:a+b;

2.dart办法中的可选参数

可选参数传递参数的时分必须带上形参的名字 咱们在办法中添加可选参数时,用{}表示,并添加名字

Flutter学习-03-dart语法学习(中)
参数b和c表示是动态

Flutter学习-03-dart语法学习(中)

咱们告诉编译器,处理了后边为空的情况.如果咱们不给默认值的话,由于是可选的所以咱们纷歧定是必填的,咱们能够选择不写,可是会报错

Flutter学习-03-dart语法学习(中)

咱们也能够指定类型,可是也要做非空判断

Flutter学习-03-dart语法学习(中)
咱们不用非空判断的话能够直接赋值默认值

Flutter学习-03-dart语法学习(中)
咱们也能够不带形参名,能够指定默认赋值,调用的时分就不能指定参数了,只能按顺序赋值。

Flutter学习-03-dart语法学习(中)

3.dart中匿名办法

  • 没有办法称号的办法下面的办法中1和2效果相同,3没有调用相当于。
    Flutter学习-03-dart语法学习(中)

4.dart中办法作为参数传递

办法也是一个目标,能够赋值一个变量,咱们能够直接调用这个变量,当办法有回来办法

Flutter学习-03-dart语法学习(中)
咱们界说一个数组,打印里边的元素,相似咱们iOS中的for循环enumerateObjectsUsingBlock

Flutter学习-03-dart语法学习(中)
咱们把函数作为参数传递的话相似block闭包list.forEach(print)中咱们把print办法作为参数传递进去。

Flutter学习-03-dart语法学习(中)
底层实现也是for in循环执行咱们传入的办法,咱们自界说一个相似的

Flutter学习-03-dart语法学习(中)

咱们也能够把匿名函数作为参数进行传递

Flutter学习-03-dart语法学习(中)

5. dart办法中的闭包

界说在函数里边的函数就是闭包,闭包也是一个目标

Flutter学习-03-dart语法学习(中)
闭包的效果:能够拜访外部函数的局部变量

Flutter学习-03-dart语法学习(中)
以上就是源于dart中办法的运用。