Dart入门—控制流程与其他

Dart入门—控制流程与其他

控制流程

if~else

if语句和可选的else语句,简单的if语句可以用条件运算符( ? : )来处理

if (isRaining()) {
    you.bringRainCoat();
} else if (isSnowing()) {
    you.wearJacket();
} else {
    car.putTopDown();
}

for

使用for循环进行迭代

var message = new StringBuffer("Dart is fun");
for (var i = 0; i < 5; i++) {
    message.write('!');
}

使用forEach()方法迭代iteration对象

List<String> names = ["Alice", "Daphne", "Elizabeth", "Joanna"];
names.forEach((name){
    print(name);
});

使用for~in迭代iteration对象的List类型和Set类型

var collection = [0, 1, 2];
for (var x in collection) {
  print(x);
}

while、do~while

while循环,先判断条件再进入循环

while (!isDone()) {
    doSomething();
}

do~while循环,先进入循环再判断条件

do {
    printLine();
} while (!atEndOfPage());

break、continue

使用break停止循环

while (true) {
    if (shutDownRequested()) break;
    processIncomingRequest();
}

使用continue跳过本次循环

for (int i = 0;i < candidates.length;i++) {
    var candidate = candidates[i];
    if (candidate.yearsExperince < 5) {
        continue;
    }
    candidate.interview();
}

switch、case

switch通常用于整数、字符串和编译时常量的比较,比较的对象必须是同一类型,每一个case必须用break结束

var command = 'OPEN';
switch (command) {
    case 'CLOSED':
        executeClosed();
        break;
    case 'PENDING':
        executePending();
        break;
    case 'APPROVED':
        executeApproved();
        break;
    case 'DENIED':
        executeDenied();
        break;
    case 'OPEN':
        executeOpen();
        break;
    default:
        executeUnknown();
  }

在case内容为空的情况下可以落空,或使用continue继续执行

var command = 'CLOSED';
switch (command) {
    case 'CLOSED':
        executeClosed();
        continue nowClosed;

nowClosed:
    case 'NOW_CLOSED':
        executeNowClosed();
        break;
}

assert

使用assert语句,如果布尔值为false就扰乱正常运行,只在检查模式下生效

//确保变量非空
assert(text != null);

//确保值小于100
assert(number < 100);

//确保这是一个https URL
assert(urlString.startsWith('https'));

注释

// 这是一行注释
/*
    这是一大段注释
*/

私有变量与函数

dart语法中没有public、protected和private这些关键字,只要在标识符前面加“_”,就能声明私有变量或者函数

不定时添加内容

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

何小有

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值