Dart语言快速入门,android组件化开发pdf

result = ‘$result with a $device’;

}

return result;

}

// 方法调用

void main() {

say(‘Bob’, ‘Howdy’); //不使用可选参数

say(‘Bob’, ‘Howdy’, ‘smoke signal’); //使用可选参数

}

  • 默认参数值

/// 设置 [bold] 和 [hidden] 标志 …

void enableFlags({bool bold = false, bool hidden = false}) {}

void main(){

// bold 值为 true; hidden 值为 false.

enableFlags(bold: true);

}

  • 函数是一等公民

  • 一个函数可以作为另一个函数的参数。

  • 同样可以将一个函数赋值给一个变量。

printElement(int element) => print(element);

void mian(){

var list = [1, 2, 3];

// 将 printElement 函数作为参数传递。

list.forEach(printElement);

}

  • 匿名函数

void main() {

var list = [‘apples’, ‘bananas’, ‘oranges’];

list.forEach((item) {

print(’${list.indexOf(item)}: $item’);

});

}

  • 闭包:其实闭包就是在一个函数中可以调用其他的函数,这样其他的函数可以使用本函数的参数及其他内容。

/ 运算符 /


  • 类型判断运算符

  • as 类型转换

  • is 判断是否为某类型

  • is! 判断不是某类型

  • 赋值运算符

  • a = value; 将value赋值给便里昂a

  • b ??= value; 如果b为空时, 将value赋值给b, 否则b的值保持不变。

  • 条件表达式

  • condition ? expr1 : expr2 如果条件为 true, 执行 expr1 (并返回它的值):否则, 执行并返回 expr2 的值。

  • expr1 ?? expr2 如果 expr1 是 non-null, 返回 expr1 的值; 否则, 执行并返回 expr2 的值。

  • 级联运算符

  • 可以实现对同一个对象进行一系列的操作。

  • 除了调用函数, 还可以访问同一对象上的字段属性。这通常可以节省创建临时变量的步骤, 同时编写出更流畅的代码。

  • 类似与build模式。

class Person{

int age;

String name;

Person({this.name, this.age});

void say(String words) {

print(name + words);

}

}

void main(){

Person() // 获取对象。

…name = ‘Bob’ // 调用成员变量。

…say(‘important’);

// 等价于下面的代码

var person = Person(name: “Bob”);

person.say(‘important’);

// 级联运算符可以嵌套

/*final addressBook = (AddressBookBuilder()

…name = ‘jenny’

…email = ‘jenny@example.com’

…phone = (PhoneNumberBuilder()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值