一、常用数据类型
1, num 数值类型
- int
- double
2,String 字符串
//1,声明字符串方式
var str1='This is str1';
//注意:这里可以使用单引号或者双引号,但是必须成对出现
// var str1="This is str1";
print('This is $str1');
//2,三个引号
String str2='''This is line 1
This is line 2''';
print('三个引号 $str2');
注意,这里可以使用三个'''
来打印多行内容,例如上面代码,控制台输出为:
3,Boolean
- bool
4,List 数组or列表
//1,定义数组的的方式一
var arr1=[111,222,333];
//2,使用List
var list1=new List();
list1.add(1);
list1.add('S1');
list1.add(1.0);
print(list1);
//添加数据的时候,也可以使用" .. "这种方式链式添加
list1..add(11)
..add(22)
..add(33);
print(list1);
//3,指定List类型 , 此时下面List仅可以添加 String 类型数据
List<String> stringList=List<String>();
stringList..add('s1')
..add('s2')
..add('s3');
5,Map
//1,map类型,可以添加多种类型,例如:int 和 string
var stu1={
'xiaoming':10,
'zhangsan':"name"
};
print(stu1);
//打印出key为"xiaoming"的value 值
print(stu1['xiaoming']);
//2,指定 map 类型,此时仅能添加 key:string类型;value:int类型数据
Map<String,int> stu2=Map<String,int>();
//添加一个数据
stu2['age']=11;
stu2['age2']=22;
//遍历map
stu2.forEach((String key,int value){
print('key = $key , value = $value');
});
6,is 关键词判断类型
//is 关键字判断数据类型
var judeg1='s1';
if(judeg1 is String){
print('judeg1 类型为:String');
}
二、常用运算符
1,算数运算符
+
、-
、*
、/
、~/ 取整
、% 取余
2,关系运算符
==
、!=
、>
、<
、>=
、<=
3,逻辑运算符
!
、&&
、||
4,赋值运算符
- 基础赋值运算符:
=
、??=
??=
: 例如,b??=10 如果b的值为空,则 b 赋值 10;
//int b;//此时b为空,使用 ??= 则b 会被赋值为10
//b??=10;
//print('b = $b');
int b=2;//此时b不为空,使用 原值 2
b??=10;
print('b = $b');
- 复合赋值运算符:
+=
、-=
、*=
、/=
、%=
、~/=
例如:a+=3;//; 等于a = a + 3
5,三目运算符
//三目运算符
bool a=true;
int b=a?1:2;// 如果a为真,则值为1,否则为
6,??
运算符
var a;
var b=a??20;//如果a为空,b = 20;a不为空,b = a
三、常用数据类型
- string 类型转换 int 类型
//string类型转换为int类型
String str='123';
int intStr=int.parse(str);//类型转换(如果str为浮点型,使用 double.parse即可)
bool isIntType=intStr is int;//is 关键字判断类型
print(isIntType);
- int 类型转换 string 类型
int a=10;
String strA=a.toString();//直接调用toString方法即可
网友评论