变量与常量
1、使用var声明变量,可赋予不同类型的值;
2、未初始化时,默认为null;
3、使用final声明一个只能赋值一次的变量;
4、使用const声明常量;使用const声明的必须是编译器常量。
var a = 10;
var b;
final c = 11;
c = 20;//error: 'c' a fanal variable,can only be set once.
const d = 20;
d = 50;// error: Constant variables can't be assigned a value.
内置类型
- 数值型-Number
- 字符串-String
- 布尔型-Boolean
- 列表-List
- 键值对-Map
- Runes、Symbols(不常见)
数值型 - 关键字 num
- 整型 int (int extends num)
- 浮点型 double (double extends num)
num a = 10;
a = 10.9;
int b = 100;
b = 100.5;//error: int不能赋值double型.
double c = 1000.5;
c = 1000;//error: A value of type 'int' can't be assigned to a variable of type 'double'.
数值型操作
- 运算符 : +、-、*、/、~/、%
加、减、乘、除、取整、取余
常用属性:
isNaN、isEven、isOdd
是否是非数字、是否是偶数、是否是奇数
常用方法:
abs()、round()、floor()、ceil()、toInt()、toDouble()
int aa = 12;
double bb = 5.5;
int cc = 11;
printf(aa + bb);
printf(aa - bb);
printf(aa * bb);
printf(aa / bb);
printf(aa ~/ bb);
printf(aa % bb);
printf(0.0 / 0.0);
printf(aa.isEven);
printf(cc.isOdd);
17.5
6.5
66.0
2.1818181818181817
2
1.0
NaN
true
true
字符型 - 关键字 String
- 使用单引号、双引号创建字符串
- 使用三个单引号或双引号创建多行字符串
- 使用r创建原始raw字符串
String str1 = '哈哈';//单引号
String str2 = "哈哈2";//双引号
//此处的mark down 不支持三引号,建议大家在IDE里写,其他字符串操作,自己去看api
String str3 = '''你好,世界。
好
是的''';//三个单引号,创建多行字符串
String str4 = """你好,张三。
你好,李四。
你好,王五""";//三个双引号创建多行字符串
布尔型- 关键字 Boolean
- 使用bool 表示布尔类型(true、false)
List (数组)及常用操作
- [],length //获取、修改元素,数组长度
- add(),insert() //添加元素,插入元素
- remove(),clear() //删除元素、清空数组
- indexOf(),lastIndexOf()//获取元素位置
- sort(),subList();//排序,获取子数组
+shuffle(),asMap(),forEach()//打乱数组、数组转字典、循环遍历
var list1 = [1,2,3];//创建数组
var list2 = const[1,2,3];//创建不可变数组
var list3 = new List();//构造创建数组
var list4 = [1,2,3,"dart",true];//数组内容可以是不同类型
print(list1[1]);//获取数组内元素
list1[1]= 4;//修改数组元素
list1.add(6);//添加元素
list1.insert(1, "iOS");//插入元素
键值对-Map 及常用操作
- [],length//获取某个value,长度
- isEmpty(),isNotEmpty//是否为空
- Keys,values //所有key和value
- containsKey(),containsValue()//是否包含某个key、value
- remove()//移除某个元素
- forEach()//循环
var map1 = {"key":"value",1:true};//创建map
printf(map1["key"]);//获取map的value
map1["key"] = "hello";//修改value
var map2 = const{"1":"dart","2":"iOS"};//创建不可变map
dynamic类型
WechatIMG18.png dynamic b = 20;
b = "iOS";
var list = new List<dynamic>();
list.add(1);
list.add("iOS");
list.add(true);
print(list);
更多内容,后续更新。。。
网友评论