0
点赞
收藏
分享

微信扫一扫

Dart语言入门学习-基本概念(一)

我们知道flutter使用的是dart语言,所以学习flutter之前最好学习一下dart。
一个简单的dart程序

// 函数的定义
printInteger(int aNumber) {
print('The number is $aNumber.');
}

main() {
var number = 42;
printInteger(number);//函数的调用
}

${expression} 的方式内嵌表达式。 如果表达式是一个标识符,则 {} 可以省略。看个例子

void main() {
var s = 'this is dart';
printString(s);
}
printString(String s) {
print('this is $s.');
print('this is ${s.toUpperCase()}');
}

运行结果为

this is this is dart.
this is THIS IS DART

概念

  • 任何变量都是一个对象,并且每个对象都是类的一个实例。甚至数字,函数,和null也都是对象,所有的对象都继承Object类
  • Dart 可以推断类型,如果要明确说明不需要任何类型, 需要使用特殊类型 dynamic
  • Dart 支持泛型,比如 List (整数列表)或 List (任何类型的对象列表)。
  • 与 Java 不同,Dart 没有关键字 “public” , “protected” 和 “private” 。如果标识符以下划线(_)开头,则它相对于库是私有的。

关键字

下面是dart语言的一些关键字
Dart语言入门学习-基本概念(一)_前端

变量

初始化一个变量

var name = '山大王';

name 变量的类型被推断为 String,当然还可以指定类型

String name = '山大王';

如果一个对象没有被严格的限制为一个类型,可以指定他为Object或dynamic类型

dynamic name = '山大王';

默认值

未被初始化的变量都有一个为null的默认值,即使变量是数字类型默认值也被初始化为null

int lineCount;
assert(lineCount == null);

Final and const

如果你不打算改变一个变量,使用final或者const,如果是类级别的需要加static,类似于java中的静态。const类似于C语言中经常定义的常数。 实例变量可以是 final 类型但不能是 const 类型,如果需要在编译时就固定变量的值,可以使用 const 类型变量。final和const都可以定义为一个常量,但const比final更严格,赋值给final的可以是一个变量,但赋值给const的必须是一个常量,举个例子

void main() {
final name = '山大王'; // 正确
const sex ='男';// 正确

// 正确,可以把一个变量name赋值给final定义的name1
final name1=name;
final sex1=sex;//正确

// 错误,不可以把一个变量赋值给const定义的name2,即使name被定义为final也不行
const name2=name;
const sex2=sex;//正确
}

所以上面的把final定义的name赋值给const定义的name2就会下面的错误
Dart语言入门学习-基本概念(一)_Android_02


举报

相关推荐

0 条评论