Dart 语言入门 3: 运算符号

运算子

说明运算子範例一元后置expr++,expr--,(),[],.,?.i++, i--, const[1,0],Test.fun(),Test?.fun一元前置-expr,!expr,~expr,++expr,--expr3-1, !flag, ~flag, ++i, --i乘,除,余数,商数*, /, %, ~/2*3, 6/3, 6%3, 6~/6加,减+,-2+3, 3-2移位(shift)<<,>>,>>>7<<2(111变成11100,28), 7>>2(111变成001,1)二进制 AND&7&2二进制 XOR^7^2二进制 OR``关係,类型测试>=,>,<=,<,as,is,is!7>=2, 2<=7相等判断==,!=x==2, x!=2逻辑 AND&&x=0 && y=0逻辑 OR`Null 判断??var x = y ?? 0 (若y是null则x=0,y非null则x=y)b ??= value;(仅当 b 为 null 时才赋值)条件exprexpr1 ? expr2 : expr3x==2?y=3:y=4;级联cascade..Object..fun1()..fun2()赋值= *= /= += -= &= ^= ……x=7, x*=7,...

补充说明

##级联(cascade):可以让你在同一个物件上连续呼叫多个物件的属性或方法。举例如下:

querySelector('#confirm') // 取得物件 (Get an object).  ..text = 'Confirm'      // 使用物件的成员 (Use its members).  ..classes.add('important')  //使用物件的方法  ..onClick.listen((e) => window.alert('Confirmed!'));

以上的例子如同:

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

也可以巢状套用你的级联,举例如下

final addressBook = (AddressBookBuilder()      ..name = 'jenny'      ..email = 'jenny@example.com'      ..phone = (PhoneNumberBuilder()            ..number = '415-555-0100'            ..label = 'home')          .build())    .build();

位元运算

二进制位元的运算如下面的範例说明

void main() {  var a = 2; // Bit 表示为 10  var b = 3; // Bit 表示为 11  var result;   result = (a & b);  print("(a & b) => $result");  result = (a | b);  print("(a | b) => $result");  result = (a ^ b);  print("(a ^ b) => $result");  result = (~b);  print("(~b) => $result");  result = (a < b);  print("(a < b) => $result");  result = (a > b);  print("(a > b) => $result");  }

http://img2.58codes.com/2024/201218528CnnPj9U9k.png


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章