zoukankan      html  css  js  c++  java
  • Dart Learn Notes 03

    操作符

    dart 有一套自己定义的操作符:
    这里我就不再写了,直接copy一份官网的。


    如果有过编程基础,上边展示的操作符应该都不陌生.

    算术运算符

    加: +
    减: -
    乘: *
    除: /
    取余: %
    取模: ~/
    自增: ++var, var++
    自减: --var, var--

    比较运算符

    ==: 等于
    !=: 不等
    >: 大于
    <: 小于
    >=: 大于等于
    <=: 小于等于

    类型判断

    as: 类型转换
    is: 判断是否是某种类型
    is!: 判断是否不是某种类型

    赋值操作符

    =: 赋值
    ??: 判断是不是null,如果是null,进行赋值
            var a = 3;
            var b;
            b ??= a;(如果b是null,把a赋值给b)
    *=:  a *= 3; ==> a = a * 3;
    +=: a += 3; ==> a = a + 3;
    ...

    赋值操作符很简单就不一一说了。

    逻辑操作符

    &&: 逻辑与
    ||: 逻辑非
    !: 非

    位操作符

    &: 与
    |: 或
    ^: 异或
    <<: 左移
    >>: 右移

    条件表达式

    var a = 1 ? true:false;
    int  getNum(int a) => a ??  3; 如果 a == null,返回3,否则返回as

    级联操作符

    ..

    首先说下什么是级联操作符,java中有个词叫链式编程,比如:

    StringBuilder() sb = new StringBuilder();
    sb.append('a').append('b').toString();

    级联和链式在外表上看上去很像。

    querySelector('#button')
        ..text =  'Confirm'
        ..classes.add('important')
        ..onClick.listen((e)  => window.alert('Confirmed!'));

    不需要频繁的创建对象,创建一个button的对象后,后续的对属性的修改和方法的调用操作都是针对这个对象来说。
    猜测这个特性,会在编写服务和应用的时候对于连续操作的场景会大量使用。

  • 相关阅读:
    linux命令--cp
    linux命令--mv
    CSS属性值定义语法中的符号说名
    select选项改变时获取选中的option的值
    JS截取字符串:slice(),substring()和substr()
    正则表达式进行密码验证
    利用@media实现IE hack
    javascript版1024游戏源码
    canvas写的一个小时钟demo
    gl.vertexAtteib3f P42 讲数据传给location参数指定的attribute变量
  • 原文地址:https://www.cnblogs.com/restartyang/p/10593882.html
Copyright © 2011-2022 走看看