【Dart 入门教程】(二) Dart 变量、常量、数据类型以及一些规范

举报
小生凡一 发表于 2022/09/25 07:34:28 2022/09/25
【摘要】 文章目录 1. 变量2. 常量3. 数据类型3.1 数值3.2 字符串3.3 布尔类型3.4 数组类型3.5 Map类型3.6 判断类型 4. 命令规则 1. 变量 dart是一...

1. 变量

dart是一个强大的脚本类语言,可以不预先定义变量类型 ,自动会类型推倒

dart 中定义变量可以通过 var关键字 可以通过类型来申明变量
如:

var str='this is var';
String str='this is var';
int str=123;

注意:
var 后就不要写类型 , 写了类型的话就不要写 var
两者都写 var a int = 5; 报错

2. 常量

dart 的常量命令关键字有两个,final 和 const修饰符。const 的特点是值不变,一开始就得赋值,final 的特点是开始可以不赋值,但也只能赋一次 ;

**而 final 不仅有 const 的编译时常量的特性,最重要的它是运行时常量,并且 final 是惰性初始化,即在运行时第一次使用前才初始化。

final name = 'Bob'; 
final String nickname = 'Bobby';
const bar = 1000000; 
const double atm = 1.01325 * bar; 

3. 数据类型

Dart 中常用的数据类型有以下:
数值:int、double
字符串:string
布尔:bool
数组:List
字典:Map

3.1 数值

  • int 必须是整型。
int a=312;
a=44;
print(a);
  • double 既可以是整型,也可是浮点型。
double b=12.31;
b=44;
print(b);

3.2 字符串

字符串定义的几种方式

既可以使用单引号赋值,也可以使用双引号赋值

var str1='this is str1';
var str2="this is str2";

print(str1);
print(str2);
String str1='this is str1';
String str2="this is str2";
print(str1);
print(str2);

print(str1 + str2);  

3.3 布尔类型

bool flag1=true;
print(flag1);
bool flag2=false;
print(flag2);

条件判断语句

var flag=true;
if(flag){
	print('真');      
}else{
	print('假');
}

3.4 数组类型

  • 第一种定义List的方式
var l1=["张三",20,true];
print(l1);  //[张三, 20, true]
print(l1.length);  //3
print(l1[0]); //张三
print(l1[1]); //20
  • 第二种定义List的方式 指定类型
var l2=<String>["张三","李四"];
print(l2);
var l3 = <int>[12, 30];
print(l3);
  • 第三种定义List的方式 增加数据,通过[]创建的集合它的容量可以变化
var l4 = [];
print(l4);
print(l4.length);

l4.add("张三");
l4.add("李四");
l4.add(20);
print(l4);
print(l4.length);

var l5 = ["张三", 20, true];
l5.add("李四");
l5.add("zhaosi");
print(l5);
  • 第四种定义List的方式

在新版本的dart里面没法使用这个方法了

var l6=new List();
var l6=List.filled(2, "");  //创建一个固定长度的集合
print(l6);
print(l6[0]);

修改集合的内容

l6[0]="张三"; 
l6[1]="李四";
print(l6);  // [张三, 李四]
l6.add("王五");  // 错误写法,通过List.filled创建的集合长度是固定,没法增加数据。

通过List.filled创建的集合长度是固定

var l6=List.filled(2, "");
print(l6.length);
l6.length=0;  //修改集合的长度,报错。
var l7=<String>["张三","李四"];
print(l7.length);  //2
l7.length=0;  //可以改变的
print(l7);  //[]
var l8=List<String>.filled(2, "");
l8[0]="string";
l8[0]=222;
print(l8);

3.5 Map类型

  • 第一种定义 Maps的方式
var person={
  "name":"张三",
  "age":20,
  "work":["程序员","送外卖"]
};

print(person);
print(person["name"]);
print(person["age"]);
print(person["work"]);
  • 第二种定义 Maps的方式
var p=new Map();
p["name"]="李四";
p["age"]=22;
p["work"]=["程序员","送外卖"];
print(p);
print(p["age"]);

3.6 判断类型

可以判断这个变量的类型情况。

var str=123;
if(str is String){
  print('是string类型');
}else if(str is int){
  print('int');
}else{
  print('其他类型');
}

4. 命令规则

  1. 变量名称必须由 数字、字母、下划线和美元符($) 组成。
  2. 标识符开头不能是数字。
  3. 标识符不能是保留字和关键字
  4. 变量的名字是区分大小写的如: age 和 Age 是不同的变量。在实际的运用中,也建议,不要用一个单词大小写区分两个变量。
  5. 标识符(变量名称)一定要见名思意 :变量名称建议用名词,方法名称建议用动词。

文章来源: blog.csdn.net,作者:小生凡一,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_45304503/article/details/127013025

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。