Dart(二)变量与注释
变量 注释 Dart
2023-09-27 14:19:37 时间
Dart(二)变量与注释
变量
方式一:var 用于声明变量,不用特指其类型。
var age = 15;
var name = 'li';
var sex = "male";
var value = true;
var side = false;
var distance = 11.5;
print('---------------');
print(age);
print(name);
print(sex);
print(value);
print(side);
print(distance);
print('---------------');
02-21 11:27:09.485 3057-3078/com.zrfpublic.flutternote I/flutter: ---------------
02-21 11:27:09.485 3057-3078/com.zrfpublic.flutternote I/flutter: 15
02-21 11:27:09.485 3057-3078/com.zrfpublic.flutternote I/flutter: li
02-21 11:27:09.485 3057-3078/com.zrfpublic.flutternote I/flutter: male
02-21 11:27:09.485 3057-3078/com.zrfpublic.flutternote I/flutter: true
02-21 11:27:09.485 3057-3078/com.zrfpublic.flutternote I/flutter: false
02-21 11:27:09.485 3057-3078/com.zrfpublic.flutternote I/flutter: 11.5
02-21 11:27:09.485 3057-3078/com.zrfpublic.flutternote I/flutter: ---------------
但需注意:一旦赋值就固定其类型了,不能再赋予其他类型的值。
![](https://upload-images.jianshu.io/upload_images/10820743-55ce0f70c5ee77a3.png?imageMogr2/auto-orient/strip|imageView2/2/w/414/format/webp)
image.png
方式二:使用内置类型
- 数字
- 字符串
- 布尔值
- 数组或列表
- map
- 符号
int a = 11;
double b = 3.3;
String c = "333";
String d = '33';
bool e = false;
List<String> f = ['a','b'];
List g = [1,2];
var h = [1,2,3];
List i =new List(3);//指明数组长度
Map map = new Map();
Map<String,String> map2 = new Map();
var map3 = {
'a':'aa',
'b':'bb'
};
字符串
字符串与int double转换
int a = int.parse("11");
double b = double.parse("22.3");
String c = 33.toString();
String d = 44.3.toString();
print(a);
print(b);
print(c);
print(d);
02-21 12:08:21.049 3057-3078/com.zrfpublic.flutternote I/flutter: 11
02-21 12:08:21.050 3057-3078/com.zrfpublic.flutternote I/flutter: 22.3
02-21 12:08:21.050 3057-3078/com.zrfpublic.flutternote I/flutter: 33
02-21 12:08:21.050 3057-3078/com.zrfpublic.flutternote I/flutter: 44.3
字符串可以用单引号或双引号引,都可以。
String c = "333";
String d = '33';
字符串模板
使用 $变量名 ${表达式}
String a = '111';
String b = '222';
String c = 'ccc';
String d = '$a and ${b} and ${2+2} and ${c+c}';
print(d);
02-21 12:15:35.670 3057-3078/com.zrfpublic.flutternote I/flutter: 111 and 222 and 4 and cccccc
字符串比较 使用==
String a = '111';
String b = '222';
String c = "111";
print(a==b);
print(a==c);
02-21 12:20:15.491 3057-3078/com.zrfpublic.flutternote I/flutter: false
02-21 12:20:15.491 3057-3078/com.zrfpublic.flutternote I/flutter: true
字符串判空
var e = '';
print(e.isEmpty);
print(e==null);
var f;
print(f==null);
02-21 12:40:07.018 3057-3078/com.zrfpublic.flutternote I/flutter: true
02-21 12:40:07.018 3057-3078/com.zrfpublic.flutternote I/flutter: false
02-21 12:40:07.018 3057-3078/com.zrfpublic.flutternote I/flutter: true
连接字符串 使用+ 或 两个字符串相邻(声明时,两个字符串之间0-n个空格)
String d = 'aaa''bbb' 'ccc';
String e = 'a'+'b'+"c";
print(d);
print(e);
02-21 12:24:18.590 3057-3078/com.zrfpublic.flutternote I/flutter: aaabbbccc
02-21 12:24:18.590 3057-3078/com.zrfpublic.flutternote I/flutter: abc
保持格式的字符串 使用''' ''' 引起来
String f = '''
a
bdd dd 22 %&**(
3
''';
print(f);
02-21 12:27:55.689 3057-3078/com.zrfpublic.flutternote I/flutter: a
bdd dd 22 %&**(
3
布尔值 只有true是真 false是假 其他全不合法(与js不一样)。
bool a = true;
bool b = false;
print(a==true);
print(b==false);
print(!b);
02-21 12:35:09.728 3057-3078/com.zrfpublic.flutternote I/flutter: true
02-21 12:35:09.728 3057-3078/com.zrfpublic.flutternote I/flutter: true
02-21 12:35:09.728 3057-3078/com.zrfpublic.flutternote I/flutter: true
![](https://upload-images.jianshu.io/upload_images/10820743-de30112aea0c4c8f.png?imageMogr2/auto-orient/strip|imageView2/2/w/328/format/webp)
image.png
变量默认值与java不同
- 变量的默认值都是null,原因是dart中所有类型都是Object的,不赋值则默认为null。
var、const、final之间区别
- var可以声明一个变量,但是可以根据变量的值自动推导出其具体的数据类型,确定数据类型后,就不能赋值别的类型的数据了,强类型语言特性。
- const声明一个变量,初始化后,其值便不可再改变,const表示的是编译时常量,也就是说在编译前就确定了其值。
- final声明一个变量,初始化后,其值便不可再改变,但是final声明的变量直到第一次使用时才开始赋值,也就是惰性赋值,也就是说在运行时才确定。
- const和final因为只需要赋值一次,便不能再次更改,因此其声明一个变量时,可以选择不明确其数据类型,自动推导即可,下面代码都是ok的:
const a = 1;
const int b = 2;
final c = 1;
final int d = 2;
注释
和其他语言的注释基本类似:
- 单行注释和多行注释
//单行注释
int a=1;
/*
多行注释,可以跨行
*/
String str = '333';
- 文档注释:可以利用dart的文档生成器生成sdk文档
/// 单行文档注释
String str2 = "333";
/**
* 多行文档注释
*/
String str3 = "333";
相关文章
- python基础之数据类型与变量
- C语言-基础语法(二):数据类型【数据类型是为了更好进行内存的管理,让编译器能确定分配多少内存】【类型相同的数据具有相同的表示形式、存储格式以及相关操作】【数据类型可以理解为创建变量的模具】
- ecliplse高亮显示选中的相同变量
- python-day2 python的基本语法(注释,运算符,数据类型,在python中,定义变量时,不需要指定变量的类型的)
- 如何写出高质量的代码 data 组件 函数 注释 命名 变量的次数
- 利用live templates和File and Code Templates快速生成代码或注释以及解释它们的区别;解释模板变量和expression表达式的含义;解决csdn无法输出$$的问题。
- 【RMAN】RMAN脚本中使用替换变量
- css变量系列(5):vue3在css中调用js变量
- 趣谈Java变量的可见性问题
- 关于条件变量
- 固定二进制位的整型变量
- 日常踩坑小记——C++条件变量
- Makefile第二讲:打印出内容和使用变量
- 三十三、python学习之Flask框架(五)模板:WTF表单、CSRF跨站请求伪造、模板特有函数&变量
- asp.net mvc 实体类成员变量标识示例