开始学习dart

1 命名函数

void printInfo(string name ,{string sex, int age})
{
if(sex!=null||age!=null)
print(name+sex+age);
else
print(name);
}
void main()
{
printInfo("张鑫");
printInfo("张鑫",sex:‘男’);
printInfo("张鑫",sex:‘男’,age=22);
}

2 箭头函数

List gg = [1, 2];

  gg.forEach((item) {
    print(item);
  });
	//上下是等价的操作
  gg.forEach((item) => print(item));

箭头函数只能有一行,可以省略大括号

 var g2 = gg.map((item) {
    return item % 2 == 0 ? item * 2 : item;
  });
  print(g2.toList());
//通过三元运算符来进行操作
  var g3= gg.map((item) => item % 2 == 0 ? item * 2 : item);
  print(g3);

箭头函数主要用于在集合的遍历过程中。

3 闭包

1 有全局变量 --长期会在内存中
2 局部变量 – 有垃圾回收机制回收
使用闭包可以达到两者的效果

fn()
{
var a=1;
return ()
{
a++;
print(a)
}
}
b=fn()
b();
b();
b();

这样就可以使用a的值。

4 类的私有属性

在定义个一个类中

class  person ()
{
String  name;
String  _name;//私有属性,外部不能进行访问
int  age;

	getName()
	{
	print(this.name)--this.age));
	}
}

5 Set 和Get设置

在类中对于私有变量,提供结构,不同于java setter 和 getter 方法

set/*(这是一个关键字)  */setName (Sring name)
{
this.name=name;
}
//调用如下
p.setname(name);
//同样的对于get是一样的
get/*(这是一个关键字)*/ getName ()
{
print(this.name);
}

6 对象操作符

?判断对象是否为空,为空就会报错。
p?p.print();
as 类型转换

var p1='';
p1=new person();
//(p1 as Person ).printInfo();
//这样就可以使用
p1.printInfo();
//新版本可以实现自动转换

级联操作
…(两个点) ,类似于java中的箭头,对于同一个对象。
举例

Person p =new Person();
p.name=" 小王";
p.age=20;
p.printInfo();
//转换如下
p .. name="小王"
  ..age=20//这里不用加分号
  ..printInfo();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值