【Flutter】Dart语法之List & Map
【Flutter】学习笔记——Dart
中的List & Map
的使用
list
列表,相当于OC
中的NSArray
数组,分为可变
和不可变
两种。map
键值对,相当于OC
中的NSDictionary
字典,也分为可变
和不可变
两种。
1. list数组
list
默认都是可变
的,列表中可以添加不同
数据类型的数据。
1.1 可变list
void main() {
// 直接 list创建
List a = ["1", 2, "3.0", 4.0];
print(a);
// var 创建
var list = [1, 2, "zjp", 3.0];
print(list);
}
运行结果如下:
1.2 常用方法
获取
&修改
指定下标数据:
// 直接获取指定下标数据
print(list[3]);
// 直接修改指定下标数据
list[3] = "reno";
插入
数据:
list.insert(1, "hellow"); // list.insert(index, element)
print(list);
删除
数据:
list.remove(1); // list.remove(element)
print(list);
清空所有
数据:
list.clear();
print(list);
运行结果如下:
1.3 排序和截取
void main() {
List b = [3, 4, 5, 8, 6, 7];
// 排序
b.sort();
print(b);
// 截取
print(b.sublist(1, 3));
}
运行结果如下:
1.4 不可变list
不可变的
list
需要使用const
修饰。
void main() {
List b = const [3, 4, 5, 8, 6, 7];
b[3] = 10; // 报错
}
不可变list
不能修改其元素值,否则会报错
。
2. map键值对
map
默认也是可变
的。
2.1 可变map
void main() {
Map a = {"a": 1, "b": 2};
print(a);
var a1 = {"a1": 1, "a2": 2};
print(a1);
}
运行结果如下:
2.2 常用方法
获取
&修改
指定下标数据:
// 直接获取指定下标数据
print(a["a"]);
// 直接修改指定下标数据
a["a"] = "aa";
print(a["a"]);
获取map长度
:
print(a.length);
获取map所有的key
:
print(a.keys);
获取map所有的value
:
print(a.values);
运行结果如下:
2.3 不可变map
不可变的
map
也是使用const
修饰。
void main() {
Map a = const {"a": 1, "b": 2};
a["a"] = 10; // 报错
}
不可变map
不能修改其元素值,否则也会报错
。
3. list转map
void main() {
List b = ["zjp", "reno"];
print(b.asMap());
}
运行结果如下:
作者:忻凯同学
链接:https://juejin.cn/post/7085642932761395237
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。