1. 写在前面

上篇文章中介绍了Dart的基本数据类型中的数组(list)和字典(Map),那么现在就继续来学习 Dart的基础语法中方法和函数是如何表示的吧。
Flutter

【Flutter】苹果Mac电脑配置flutter开发环境

【Flutter】 Android Studio 安装第三方模拟器—网易MuMu

【Flutter】项目运行报错Failed to find Build Tools revision 29.0.2

【Flutter】flutter doctor 报错Android license status unknown. Run `flutter doctor --android-licenses‘

【Flutter】如何新建项目,运行你的第一个 flutter 工程项目

【Flutter】Dart中的var、final 和 const基本使用

【Flutter】Dart数据类型之num

【Flutter】Dart数据类型之String

【Flutter】Dart的数据类型list&Map(数组和字典)

2. 补充一点内容

dart 中有两个比较特殊的运算符。

  • 赋值运算符 ??=
  • 条件运算符 ??
void operatorTest(){
//  dart中的运算符
/*
* 赋值运算符 ??=
* 条件运算符 ??
*
*/
  //举例

  var a;
  a ??= 10;//当a没有值的时候就赋值 10
  print(a);

  a ??= 5;
  print(a);
  a ??= 1;
  print(a);

}
  • 代码运行结果
    代码运行结果

a初始化的时候没有值,当已经赋值之后,后面再使用??=赋值就赋值不上了,因为此时 a已经有值了。

结论: 如果anil就赋值,如果 a有值了就直接返回该值,并不会重新赋上新值。

  • 条件运算符 ??
void operatorTest(){
//  dart中的运算符
/*
* 条件运算符 ??
*/
  var a;
  a ??= 10;//当a没有值的时候就赋值 10
  var b ;
  b = 5;
  print(b ?? a);// ??当左边有值就返回左边,否则返回右边

  • 运行结果

运行结果

  • 返回右边值

运行结果

3. 方法与箭头函数

万物皆对象,在 dart中,方法也是一个对象,返回值和参数类型可以省略。

当方法的执行语句只有一句的时候,可以使用箭头函数 => 表达式

3.1 方法举例

void main(){

  functionTest();

}
void functionTest(){
  print("我是 function");
}
  • 运行结果

运行结果

3.2 箭头函数举例

  • 上面的可以改成这样的,也是一样的
    只有一句,就可以改成箭头函数
  • 举例
void main(){

  functionTest();

}
void functionTest() {
  print(sum(10, 10));
}
// 求和方法
int sum (int a,int b){
  return a +b ;
}

上面已经说过:返回值和参数类型可以省略。那么变形如下:

// 求和方法
sum (a,b){
  return a +b ;
}

但是不建议这么写,不便于阅读没有必要。返回值和参数类型省略了又只有一句话,又可以变成箭头函数,return都可以直接不要了如下:

// 求和方法
sum (a,b) =>  a +b ;
  • 运行结果

运行结果

3.3 箭头函数支持三目运算

void main(){

  functionTest();

}
void functionTest() {
  print(sum(10, 10));
}
// 求和方法
sum (a,b) =>  a == 10 ? a + b : a - b;

  • 运行结果

代码运行结果

4. 写在后面

关注我,更多内容持续输出

🌹 喜欢就点个赞吧👍🌹

🌹 觉得有收获的,可以来一波 收藏+关注,以免你下次找不到我😁🌹

🌹欢迎大家留言交流,批评指正,转发请注明出处,谢谢支持!🌹

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐