likes
comments
collection
share

Flutter —— dart基础语法(2)

作者站长头像
站长
· 阅读数 7

1. list 和 map

list,Dart中的列表:

  • var list1 = [1,2,3]; 创建可变列表。
  • var list1 = const [1,2,3]; 创建不可变列表。
  • 可以存放不同的类型

Flutter —— dart基础语法(2)

指定位置添加元素。

list1.insert(0, "asd");

删除指定元素。

list1.remove("asd");

清除所有元素。

list1.clear();

数组排序。

list1.sort();

取sublist(这里取到的范围是1-2,也就是包含前面不包含后面)。

list1.sublist(1,3);

list 转为map

list1.asMap()

如果是不可变数组进行数组的操作就会报错。 Flutter —— dart基础语法(2) map,dart中的键值对。

  • var dic1 = {'one':'xiaolu','two':'xiaoshun'};创建可变列表。
  • var dic1 = const {'one':'xiaolu','two':'xiaoshun'};创建不可变列表。

字典取值

dic1["one"]

获取字典长度

dic1.length;

获取字典所有的值

 dic1.values;

获取字典所有的键

 dic1.keys;

2. ??= 和 ??

??= : 如果这个变量的值为空的时候则进行赋值,否则就不进行赋值。

Flutter —— dart基础语法(2)

?? : 如果左边有值返回左边,否则就返回右边。

Flutter —— dart基础语法(2)

3. 方法 和 箭头函数

Dart 中的方法也是一个对象,返回值和参数类型可以省略。当方法的执行语句只有一句的时候,可以使用箭头函数 => 表达式。

void main() => functionDemo();

正常的函数

int sum(int a, int b) {
  return a + b;
  }

忽略返回值和参数类型

sum( a,  b) {
  return a + b;
  }

4.方法的可选参数

传递可选参数必须带上形参的名字。

sum(int a,{ b,  c}){
  b ??= 0;
  c ??= 0;
  return a + b + c;
}

这样调用的时候,就要带上形参的名字。这里的顺序可以颠倒。

sum(1,c:2,b:3);

这里也可以只传一个可选参数,当然也可以都不传。

sum(1,b:3);
sum(1);

函数如果将可选参数的类型定义为 Int,String等类型,需要在Int,String后面添加一个?,这样就会有null ability,参数就可以为空了。但是这里要记得处理参数为空的情况。

sum(int a,{int? b,int?  c}){
  b ??= 0;
  c ??= 0;
  return a + b + c;
}

或者可以给参数一个默认值。

sum(int a,{int b = 0,int c = 0}){
  return a + b + c;
}

还有一种方法不需要传递参数的名字,只需要按顺序输入值就可以了。这里不能跳过b给c赋值,如果只输入两个参数,那么就会赋值a和b。

sum(int a,[int b = 0, int c = 0]){
  return a + b + c;
}

调用

sum(1,2,3);
sum(1,2);
转载自:https://juejin.cn/post/7013269651052298277
评论
请登录