Dart语言基础概述

Flutter使用的是Dart语言.我们可以在repl.it网站内在线编译Dart程序

首先进入网站给出的是一个标准的语言学习入门输出"Hello World!"

void main() {
	print('Hello World!');
}

第一眼瞧,感觉和C语言没有什么不一样的

变量

在Dart中声明变量的方式有两种.一种是让Dart编译器自己去推断的声明方式:

var a = 1;

另外一种就是指定类型的模式:

int a = 1;

输出:

print("a is :$a");

另,在Dart中,变量未初始化的值都为null.所以判断就变得简单了if (a == null) {}

数值类型

对于数值类型,一共有三种类型:num.64位int.64位double.

在Dart中num是int和float的父类

想用数值计算单一些高级功能的话可以使用dart:math库.

布尔类型

Dart中有一个bool类型,取值只有true,false两个值.像C中的下面这个示例肯定是不能通过编译的

/// 错误示例
var a = 1;
if (a) {
} else {
}

必须是类似Swift有表达式的==返回的bool值判断

var a = 1;
if (a == 1) {
} else {
}

字符串

类似Swift.多行文本可以使用如下的形式创建

	```context```

字符串的创建

 String a = 'abc';
 String b = "abc";
 String c = """abc""";

其中a.b.c的值相等.

字符串的拼接

var d = a + b + c

输出

///直接输出c的值
print("$c");
/// 将c字符串全部转换成大写字母然后输出
print("${c.toUpperCase()}");

集合类型

List

可以理解为Array

/// 创建一个Array
var array = ["123" ,"2345" ,"3456"];
/// 向Array添加一个元素
array.add("123123123");
/// 创建时可以添加类型约束
var array2 = <Stirng>[];
/// 动态类型数组
var array3 = <dynamic>[1, "2" ,"3"];
/// or,反正能自动推算类型
var array3 = [1, "2" ,"3"];

需要注意的是,add的添加的方法的类型必须和创建array

输出

print(array);

Map

可以理解为Dictionary

/// 创建一个Map
var map = {"key1" :value1 ,"key2" :value2};
/// 向Map添加一个元素/或者更新已有Key的value
map["key3"] = value3
/// 创建时可以添加类型约束
var map2 = <String ,String>{}; 
/// 动态类型Map
var map3 = <String ,dynamic>{"123":11,"1234":"1234567x"};

常量

Dart的常量有两种

  • 1.const,即为编译期就能确定的值.
  • 2.final,可以在运行期确定值,一旦确定就不能更改.

两者都是确定值后不能更改,唯一有区别的是final可以在运行期确定值.就比如const a就会报错.

结尾

和一般的编程语言可能不太相同的地方是,Dart中所有的类型都是对象类型,都继承自顶层类型Object.就连null也是对象类型…

Dart库

发布了268 篇原创文章 · 获赞 59 · 访问量 19万+

猜你喜欢

转载自blog.csdn.net/qq_18683985/article/details/102878753
今日推荐