Flutter之Dart数据类型及数据之间的转换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flutter之Dart数据类型及数据之间的转换相关的知识,希望对你有一定的参考价值。
参考技术A 1、数值型-Number2、布尔型-Boolean
3、字符串-String
4、列表-List
5、键值对-Map
1、int: 整数,数值
2、double: 浮点型数值,带有小数点
运算符:+,-,*,/,~/(取整),%;
字符串操作
运算符:+,*,==,[]
插值表达式:$expression
常用属性:length,isEmpty(是否为空)
Map 对象
Flutter之Dart语法数据类型
- 变量与常量
Dart中用var声明一个变量,如果想设置一个变量不可变,那么可以使用final或者const修饰。
var number;
number = 12;
print("the number is $number");
number = "20";
print(number);
final sum = 10;
const count = 2;
- 字符串
字符串的几种创建方式
- 使用单引号、双引号
- 使用三个引号、双引号创建多行字符串
- 使用r创建原始字符串,使转义字符无效
var a = 'hahha';
print(a);
var b = "hoho";
print(b);
var c = ''' I
have
a
dream
!
''';
print(c);
var d = """do
you
have
dream
?
""";
print(d);
var e = "can \\nyou \\nuse \\nflutter ?";
var f = r"can \\nyou \\nuse \\nflutter ?";
print(e);
print(f);
输出结果
//输出结果
/*
hahha
hoho
I
have
a
dream
!
do
you
have
dream
?
can
you
use
flutter ?
can \\nyou \\nuse \\nflutter ?
*/
字符串操作
- 运算符 + 、*、===、[]
String a = "11";
print(a + a);
print(a * 3);
print(a == "22");
print([a,a,a,a]);
- 插值表达式$
- 常用属性length、isEmpty、isNotEmpty
- 常用方法
//contains
String str1 = "i am a ios developer";
String subStr = "ios";
if (str1.contains(subStr))
print("str1 contains subStr");
// substring
String subStr1 = str1.substring(12);
String subStr2 = str1.substring(8,10);
print("frist subString is $subStr1 , second subString is $subStr2");
// startsWith
bool isStart = str1.startsWith("i");
if (isStart)
print("object");
// endsWith
bool isEnd = str1.endsWith("developer");
if (isEnd)
print("object");
str1.indexOf("ios");
str1.indexOf("i",2);
str1.lastIndexOf("i");
str1.lastIndexOf("i",2);
String upStr = str1.toUpperCase();
String lowerStr = upStr.toLowerCase();
print(upStr + lowerStr);
str1.trim();
str1.trimLeft();
str1.trimRight();
str1.split("ios");
str1.replaceAll("ios", "flutter");
- List
dart中的数组分为可变数组和不可变数组,而且数组里面可以放不同类型的数据。List也提供了很多便捷的方法分。
//可变数组
var list = [1,2,3];
//不可变数组
var list2 = const [1,2,3,4];
//数字里面可以放不同类型的数据
var list3 = [1,2,"ios",list];
//常用方法
print(list.length); //获取长度
list.add(4); //添加元素
list.remove(4); //移除元素
list3.insert(3, "android"); //在指定索引添加元素
var index = list3.indexOf("ios"); //返回元素的索引
list3.shuffle(); //打乱数组里面的顺序
//遍历数组
list3.forEach((element)
print(element);
);
- Map
在Dart中,Map用key-value形式储存,key和value都能是任何类型的对象,key唯一。Map同样也分为可变和不可变两种。
//创建可变Map
Map person =
"name": "xiaoming",
"height":180,
"age":29,
;
//创建不可变Map
Map dog = const
"name": "xiaohua",
"kind": "erha",
;
person.remove("age"); //移除key age
person.clear(); //清除map
person.addAll(dog); //把狗变成人了
person.containsKey("name"); //判断key中是否有“name”
person.containsValue("xiaoming"); //判断value中是否有“小明”
var values = person.values; //获取所有value
var keys = person.keys; //获取所有key
//遍历Map
person.forEach((key, value)
print("dog de $key is $value");
);
以上是关于Flutter之Dart数据类型及数据之间的转换的主要内容,如果未能解决你的问题,请参考以下文章
Flutter基础组件08BottomNavigationBar