首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Flutter学习二之Dart语言介绍

上次我记录了Flutter的环境搭建,这次来简单记录一下Drat语言,Flutter是Google推出并开源的移动应用开发框架,开发语言是Dart,那么Dart语言和其他的语言在语法上有上面区别呢,就我目前了解到的一部分,其实有很多java或者kotlin的影子。

一 、变量声明

1.var

类似于kotlin中的var,它可以接收任何类型的变量,和kotlin一样第一次赋值和就不能再次改变变量的类型了。

var t;

t = "hi world";

// 下面代码在dart中会报错,因为变量t的类型已经确定为String,

// 类型一旦确定后则不能再更改其类型。

t = 1000;

2.dynamic和Object

和java中的object一样,所有对象都是object子类,万物皆对象。

dynamic和var类型声明的变量都可以赋值任意对象。和var区别就在于声明的变量在后期还是可以改变变量类型的。

dynamic t;

Object x;

t = "hi world";

x = 'Hello Object';

//下面代码没有问题

t = 1000;

x = 1000;

3. final和const

和java一样final是用来修饰常量,只能被赋值一次。同样const也和kotlin中的用法很类似,也是用来表示常量,只是在dart上被final或者const修饰的变量,变量类型可以省略。

//可以省略String这个类型声明final str = "hi world";

//final String str = "hi world";

const str1 = "hi world";

//const String str1 = "hi world";

二、函数

1.和java一样dart也是一种面向对象的语言,函数实际上也是一个对象。

bool isNoble(int index) {

return _list[index] != null;

}

2.和java中不同的是,bool这个函数返回类型可以不用写,默认返回dynamic类型。

isNoble(int index) => return _list[index] != null;

如果只包含一个表达式的函数可以简写成一行,是不是有写java的影子,哈哈。

3.Dart中函数可以作为变量存在:

var say = (str){

print(str);

};

say("hello world");

4.和kotlin类似Dart中也可以将函数当作参数传递:

void execute(var callback) {

callback();

}

execute(() => print("hello world""))

5.在Dart中定义函数的时候,可以使用{param1, param2, …},放在参数的后面,可以用于指定名称参数。例如:

//设置[name]和[age]标志

void setUser({String name, int age}) {

// ...

}

enableFlags( age: 12,bold: “xiaoming”);

调用函数的时候可以指定函数的名称,优先赋值给后面的参数,这和kotlin里面还是挺像的。只是这里需要添加额外的{}。

今天就先记录到这里,以后有用到其他在来补充。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200813A035M500?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券