• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

dart的基本语法(一)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Hello world

​ 安装dart的环境就不赘述了,无脑安装就可以了,安装过程中好像需要 梯@@子 (vpn),我装的时候失败好多次,我的 梯@@子 不能用了,准备不装了的时候,莫名其妙的装好了。迷の操作。惯例,一门新的语言必须要传统一下。

main(){
  print("hello world");
}

直接就输出了 “hello world”,没有那么多繁杂的语法。

变量类型

定义变量

main(){
  var age=24; // 使用var来定义变量,会自动的识别类型
  int Age=24; // 直接使用int来定义也可以
  age="25"; // (报错)类型检验自动识别类型以后,第一次什么类型之后就是什么类型了
  print(age);
}

定义常量

main(){
  // 赋值一次后就不能改变了,称之为常量,(感觉我说的就是废话)
  final age=23;
  const Age=25;
  print(Age);
  print(age);
}

final与const的区别:final 可以开始不赋值 只能赋一次 ; 而final不仅有const的编译时常量的特性,最重要的它是运行时常量,并且final是惰性初始化,即在运行时第一次使用前才初始化。

main(){
  final time=new DateTime.now();
  const Time=new DateTime.now(); // 报错
  print(time);
}

字符拼接

main(){
  String name="kign";
  String age= "23";
  print(name +":"+ age);
  print("${name}+:+${age}");
}

list的定义

main() {
  List l1 = ["aaa", "bbb", "ccc"];
  print(l1[1]);
  List l2 = [
    {'age': 12},
    {"age": 34}
  ];
  print(l2[0]["age"]);
  var l3 = new List<String>();
  l3.add("value");
  l3.add("page");
  print(l3[1]);
}

Map的定义

main() {
 Map m1={"name":"张三","age":24,"work":["程序员","外卖员"]};
 print(m1["work"]);
 var p=new Map();
 p["name"]="李四";
 p["age"]=23;
 p["work"]=["程序员","外卖员"];
 print(p["age"]);
}

类型判断

main() {
  var age = 25;
  if (age is int) { // is关键字
    print("int类型数据");
  } else {
    print("其它类型数据");
  }
}

??运算符

​ 判断当前是否为空,为空则为??后的值,不为空则为当前赋值的值

main() {
  var a;
  var b = a ?? 10;
  print(b);

  var c = 22;
  var d = c ?? 10;
  print(d);
}

输出:

10
22

??=运算符

​ 判断当前变量是否为空,为空则将运算符后的数值赋值给当变量

main() {
  var a;
  a??=23;
  print(a);
    
  var b=10;
  b??=23;
  print(b);
}

输出:

23
10

类型转换

main() {
  var a="12"; 
  var b=double.parse(a);
  print(b);

  var c="13";
  print(c.toString());
}

集合循环

list

List myList=['香蕉','苹果','西瓜'];
// 最普通的循环
for(var i=0;i<myList.length;i++){
    print(myList[i]);
}
// forEach 
for(var item in myList){
    print(item);
}
// forEach 
myList.forEach((value){
    print("$value");
});
// A数组扩大二倍赋值给B数组
List myList=[1,3,4];
List newList=new List();
for(var i=0;i<myList.length;i++){
    newList.add(myList[i]*2);
}
print(newList);
// A数组扩大二倍给B数组
List myList=[1,3,4];      
var newList=myList.map((value){
    return value*2;
});
print(newList.toList());

list内容的判断

// 一
List myList=[1,3,4,5,7,8,9];
var newList=myList.where((value){ // 将数组中大于5的给予一个新数组
    return value>5;
});
print(newList.toList());
// 二
List myList=[1,3,4,5,7,8,9];
var f=myList.any((value){   //只要集合里面有满足条件的就返回true
    return value>5;
});
print(f);
// 三
 List myList=[1,3,4,5,7,8,9];
 var f=myList.every((value){   //每一个都满足条件返回true否则返回false
     return value>5;
 });
 print(f);

Set的循环

main() {
   var s=new Set();
   s.addAll([1,222,333]);
   s.forEach((value)=>print(value));
}

Map的循环

main() {
  Map person={
    "name":"张三",
    "age":20
  };
  person.forEach((key,value){
    print("$key---$value");
  });
}

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Flutter学习笔记(8)--Dart面向对象发布时间:2022-07-14
下一篇:
Dart语法学习发布时间:2022-07-14
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap