flutter从入门到精通一

Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台

file

flutter是基于dart语言开发的,我们将首先通过几章节介绍下dart语言,再详细的学习flutter
1.dart里面是有类型的,并且具有类型校验校验 ,如果不申明具体类名,而是用var,dart就会自动推断变量类型
2.dart变量名称是区分大小的,name和Name是两个不同的变量
3.dart数据类型(可以通过is关键字判断类型):

  • 整形 int 浮点型:double double可以被赋值整形或者浮点型,但是int必须是整型。
  • 字符串 String
  • 布尔 bool
  • Lsit (数组)
  • Map (字典),类似于js中的对象
 //用var来定义变量,能定义任何变量,但是会自动推断变量类型,一旦赋值给某个具体的变量类型后,变量类型不会发生变化了
// void表示没有返回值,所有的dart代码需要放在main方法里面
//下面定义了一个数组,数组的增加是通过add()
void main(){
  var arr=new List();
  arr.add('张四');
  arr.add('张五');
  arr.add('张六');
  print(arr);
}

不同类型的变量,可以通过一些方法进行转换类型,如下:

/**
 * 1,number和String类型之间的转换
 * number=>String  toString()
 * String=>number parse()
 * 2,isEmpty:可以判断字符串是否为空
 */
  String str='123';
  int myNum=int.parse(str);
  // var myNum=double.parse(str);
    //dart中,打印信息用print,这个是全局方法,类似于js中的console.log()
  print(myNum is int);

file

**tips:如果预知代码可能会出现bug,可以将代码包在try-catch里面,如下:

  String price='';
  try{
    var myNum=double.parse(price);
    print(myNum);
  }catch(err){
    print(0);
  }

dart中主要有三种集合类型:
List(类似js中的数组):

  • List属性:
    • isEmpty:是否为空
    • isNotEmpty:是否不为空
    • reversed:数组翻转
  • List方法:
    • add:增加元素,增加一个
    • addAll:增加元素,增加多个,传入的是一个数组(主要的功能是拼接数组)
    • indexOf:查找某个元素的索引
    • remove:删除某个元素
    • removeAt:删除某个索引的元素
    • fillRange:修改
    • insert(index,value):指定位置插入数据
    • insertAll:插入多个数据

Set(去重,方法和List差不多,将Set转化成List,通过toList())

  var list=['苹果','香蕉','桃子','苹果','香蕉','桃子','苹果','香蕉','桃子'];
  var set=new Set();
  set.addAll(list);
  var list1=set.toList();

Maps:其类似于json,但是键名需要用引号引起来

var person={
     "name":"jack"
 }
  • 常用属性:
  • keys:所有的键
  • values:所有的键值
  • isEmpty:
  • isNotEmpty:
  • 常用方法:
  • addAll:一次增加多个键值对
  • remove:

对于三个集合(List,Set,Map)有些公共的循环遍历方法:

  • for-in
  • forEach():类似于es6中的forEach
  • map:类似于es6中的map
  • where:类似于es6中的filter
  • any:类似于es6中的some
  • every:类似于es6中的every

函数:包括系统函数+自定义函数

  • 系统内置的函数:比如print
  • 一个方法中是可以嵌套其他方法的,而且可以嵌套很多层,这时候需要注意方法的作用域,(方法里面套方法,返回内部的方法,这就是闭包)
  • 给方法命名建议使用驼峰,首字母是小写,给类命名也是驼峰,但是首字母需要大写
  • 注意dart中的方法是没有关键字function,这个要注意
    *dart中的可选参数,需要将参数放在:[ ]
  • 箭头函数只能写一句话,和es6中的箭头函数有点区别,
  • 方法的形参尽量加上类型
  • 全局变量:会常驻内存,容易污染全局
  • 局部变量:不会常驻内存,会被垃圾机制回收,不会污染全局
  • 如果想让一个变量常驻内存,而且不污染全局,只能用闭包实现,闭包也是这个目的
class Person{
    String name;
  int age;
  // 构造函数,名字和类名一样
  Person(name,age){
    this.age=age;
    this.name=name;
  }
  //上面有个简写的方法:
    //Person(this.name,this.age)

  getInfo(){
    return '$name--$age';
  }
}

main(){
  /**
   * 类(三大特性:封装,继承,多态),
   * 类需要放到main函数外面
   */
  Person p=new Person('唐凯震',25);
  print(p.getInfo());
}  

扫码关注公众号,有更多精彩文章等你哦

file
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,636评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,890评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,680评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,766评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,665评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,045评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,515评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,182评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,334评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,274评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,319评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,002评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,599评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,675评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,917评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,309评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,885评论 2 341

推荐阅读更多精彩内容