1 赋值运算符 ??=

b ??= "hello" 若b为空,则把"hello"赋给b 。

2 三目运算符

boolean ? expression1 : expression2 ; 

3  a ?? b

string a ="";
string b = "b";
string c = a??b ,若a不为空,则把a赋给c,否则把b赋给c

4 for语句

var list = [1,2,3];
for(int a in list){
print(a);
}

5 方法特性

  • 方法也是对象,具体类型Function
  • 返回值类型、参数类型都克省略
  • 箭头语法: => expression 是 {return expr;} 缩写
  • 都有返回值,默认return null
printPerson("koala", 18);

printPerson(name,age){ //省略了返回值和参数类型
print("name=$name ,age=$age");
} getName(name) => "name $name";//箭头语法 后面跟着一个返回的表达式 ,这里返回一个字符串

6 可选参数(在flutter控件初始化时经常用到)

基于名称用{}表示,调用时需指定参数名称。
printPerson(name, {int age, String gender}) {
print("name=$name,age=$age,gender=$gender");
} printPerson("koala", age: 18);

基于位置用[]表示

printPerson1(name, [int age, String gender]) {
print("name=$name,age=$age,gender=$gender");
} printPerson1("koala", 18, "male");

7 方法对象

方法可作为对象赋值给其它变量
void main(){
Function function = printHello;//将方法名称赋给变量
function('koala');//调用方法
} printHello(String name){
print("hello,$name");
}

方法可作为参数传递给其它方法

void main() {
var list = [1, 2, "a", true];
list.forEach(test);
} void test(Object obj) {
if (obj is String) print(obj * 2);
if (obj is num) print(obj * 2);
}

Dark 运算符的更多相关文章

  1. shell运算符

    原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用. expr 是一款表达式计算工具,使用它能完成表达式的求值操作. #!/bin/bash v ...

  2. SQL Server-聚焦APPLY运算符(二十七)

    前言 其实有些新的特性在SQL Server早就已经出现过,但是若非系统的去学习数据库你会发现在实际项目中别人的SQL其实是比较复杂的,其实利用新的SQL Server语法会更加方便和简洁,从本节开始 ...

  3. java中的移位运算符:<<,>>,>>>总结

    java中有三种移位运算符 <<      :     左移运算符,num << 1,相当于num乘以2 >>      :     右移运算符,num >& ...

  4. 我的MYSQL学习心得(五) 运算符

    我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  5. .NET 基础 一步步 一幕幕[运算符、占位符、转义符]

      运算符.占位符.转义符 好吧,在五局全胜之后,终于升到了三个钻,距离一个星星还有一大段距离,忽然想起来今天的博客还没写,果断坑队友,来写博客了....感觉以后还是每天更新一篇比较好.要不晚上就该熬 ...

  6. ECMASCript2015 提案 stage-3的对象展开运算符

    看源码时看到如下的代码 export default { //通过mapActions将actions映射到methods里 methods: { ...mapActions([ 'updateSta ...

  7. JavaScript权威设计--JavaScript表达式与运算符,语句(简要学习笔记六)

    1.delete是一元操作符,用来删除对象属性或者元素. var a={ x:1, y:2 } delete a.x; //删除x属性 “x”in a //false:a对象中已经不存在x属性 ale ...

  8. JavaScript权威设计--JavaScript表达式与运算符(简要学习笔记五)

    1.3种原始表达式     1.直接量:    1.23    //数字直接量                         “hello”    //字符串直接量                 ...

  9. LINQ to SQL语句(18)之运算符转换

    运算符转换 1.AsEnumerable:将类型转换为泛型 IEnumerable 使用 AsEnumerable<TSource> 可返回类型化为泛型 IEnumerable 的参数.在 ...

随机推荐

  1. 检查linux是否安装java、tomcat、mysql

    linux下,查看安装软件 1.linux下的java Java -version 如果出现java版本,证明java安装成功. 2.linux下的tomcat 2.1.检查linux是否安装tomc ...

  2. postgres外部表

    在创建外部表的时候遇见: CREATE EXTENSION file_fdw;2018-12-21 17:32:23.822 CST [31237] ERROR:  could not open ex ...

  3. (转)java并发编程:CopyOnWriteArrayList

    原文链接:http://ifeve.com/java-copy-on-write/ Copy-On-Write简称COW,是一种用于程序设计中的优化策略.其基本思路是,从一开始大家都在共享同一个内容, ...

  4. linux系统使用grep命令提取文件的基名或者路径名

    效果等于~]#dirname /etc/sysconfig/network-scripts/ifcfg-ens33 echo "/etc/sysconfig/network-scripts/ ...

  5. svn 权限设置

    /***********************************************************/ //SVNSubversion 用户权限管理 //资料来源:网络.总结 // ...

  6. osworkflow 入门基础2

    [quote]前篇我引入了互联网上找来的一篇文章,接着上篇讲:osworkflow 工作流是非常轻量级的,虽然2006就停止活动了,互联网上的资料也不是很多,官网也没过多的说明,比起jbpm 和act ...

  7. VScode VUE+PYTHON习惯用的编辑器

    本人从事运维开发工作,经常要开发一些web系统工具,这就需要用到前后端开发.vscode是我用得最舒服的一种编辑器,前端后端都习惯在上面写,这里记录一些配置. 一,插件安装 目前我最主要用的是:    ...

  8. nginx防止跳转到内网解决

    proxy_redirect http://test.abc.com:9080/ /;

  9. Linux下普通用户与root用户之间的互相切换

    只是切换root身份,环境仍是普通用户shell su.su -.su root 按照提示输入相应的root密码,就可登录到root权限下. 用户和shell环境都切换为root sudo -i.su ...

  10. Python2和Python3中列表推导式的不同

    Python2和Python3中列表推导式的不同 python2 >>> x = 'my girl' >>> lst = [x for x in 'hello'] ...