下載壓縮包:
You can get stable channel releases using the instructions above, or you can get stable, beta, or dev channel releases using a package manager or Dart Docker image, or by downloading the SDK as a zip file.
https://storage.flutter-io.cn/dart-archive/channels/stable/release/2.18.3/sdk/dartsdk-windows-x64-release.zip the Flutter SDK includes the full Dart SDK, and has Dart’s dart command-line interface in its bin folder. 2.vscode 安裝 dark ,code runner
2.dart强類型
var String int
會推斷類型 大小寫敏感
常量 const 值不變,一開始就得賦值 const PI=3.14;
final 開始可以不賦值,但只能賦值一次
final a=new DateTime.now();
3.數據類型
注释 // /// /* */
int
double即可是整型,也可以是浮点型
String 单引 双印 三个单引或双引,三个可以包含换行
bool :true false
List 数组 :容量可以变化
不指定类型: var l1=["张三",12,true]; l1.length l1[0]
指定类型 var k1=<String>["",""]
空 var k2=[] k2.add("张三");
修改长度k2.length=3
废弃:var k3=new List();
创建固定长度:
var k3=List.filled(3, “”);//长度,填充内容
var k3=List.filled(3, “”);
Maps字典
键值对 键必须有引号
第一种:
var k4={
“name”:“张三”,
“age”:22,
“work”:[“程序员”,“外卖员”]
};
print(k4);
print(k4[“age”]);
第二种:
var p=new Map();
p[‘name’]=“礼拜”;
用不到的
Runes utf-32编码,通过文字转换成符号表情,或特定文字
拼接
String s1=“hello”;
String s2=“xiaoming”;
print(“$s1 $s2”); print(s1+" "+s2)
类型判断
var s=456;
if(s is String){
print(“is string”);
}else if(s is int){
print(“is int”);
}else{
print(“其他”);
}
运算符
关系
== != < > >= <= 逻辑 ! && ||
+ - * / ~/取整 %取余
赋值:
= ??= 表示如果为空则赋值 a??=10 a如果是空就给10
复合:+= -= *= /= %= ~/=
var a=10;
var b=a++; //先赋值,后运算
print(b); //b=10
var a=10;
var b=++a;//先运算,后赋值
print(b); //b=11
条件:
if else if else
switch case: 要有break,否则会穿透,意思就是去无条件执行下一个case
switch(sex){
case '男':
print("nan");break;
case '女': print("nv");break;
default: print("不知道");break;
}
三目:
bool flag=true;
String s=flag?“我是true”:“我是false”;
??
var a;
var b=a??10;
print(b);
类型转换
1.转数字
```dart
//string转int
String str="123";
var myNum=int.parse(str);
print(myNum is int);
//string转double
String str2="123.45";
var myNum2=double.parse(str2);
print(myNum2 is double);
2.异常处理
try {
var a=double.parse(price);
print(a);
} catch (e) {
print("错误");
}
3.num转string
var myNum=12;
var str=myNum.toString();
print(str is String);
4 转bool
- isEmpty:判断字符串是否为空
var str="";
if(str.isEmpty){
print("空字符串");
}else{
print("不是空字符串");
}
2)其他
```dart
var myNum;
if( myNum==null){
print("空");
}else{
print("不是空");
}``
3)非法:isNaN
var myNum=0/0;
print(myNum);
if(myNum.isNaN){
print('非法');
}
循环
void main() {
int sum=0;
for(int i=1;i<=100;i++){
sum+=i;}
print(sum);
}
List list=["李白","杜甫","白居易","王维"];
for(int i=0;i<list.length;i++){
print(list[i]);
}
// example2
`List list=[{
"name":"苏州"
},{
"name":"广州"
},{
"name":"杭州"
},{
"name":"梧州"
}];
for(int i=0;i<list.length;i++){
print(list[i]['name']);
}
//example3
List list=[
{
"cate":"国内",
"news":[
{"title":"国内新闻1"},
{"title":"国内新闻2"},
{"title":"国内新闻3"},
]
},{"cate":"国际",
"news":[
{"title":"国际新闻1"},
{"title":"国际新闻2"},
{"title":"国际新闻3"},
]
}
];
for(int i=0;i<list.length;i++){
print(list[i]['cate']);
for(int j=0;j<list[i]["news"].length;j++){
print(list[i]["news"][j]["title"]);
}
}
while
int i=1;
int sum=0;
while(i<=100){
sum+=i;
i++;
}
print(sum);
// do while
int i=1;
int sum=0;
do{
sum+=i;
i++;
}while(i<=100);
print(sum);
}
continue break
for(int i=1;i<10;i++){
if(i==5){continue;}//跳过当前循环,继续循环
print(i);
};
for(int i=1;i<10;i++){
if(i==5){break;}//不再执行循环,只能跳出一层
print(i);
};
本文介绍了如何下载 Flutter SDK,包括稳定、beta 和 dev 版本获取,以及VSCode中安装 Dark 和 CodeRunner。涵盖Dart语言特性如强类型、变量声明、数据类型、类型判断、运算符、转换和控制结构。还讲解了关键概念如类、列表、字典和类型安全实践。
3015

被折叠的 条评论
为什么被折叠?



