IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Dart入门—控制流程与其他

    summer发表于 2016-05-28 08:36:47
    love 0

    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这些关键字,只要在标识符前面加“_”,就能声明私有变量或者函数

    不定时添加内容



沪ICP备19023445号-2号
友情链接