当前位置: 首页 > news >正文

三水网站制作公司网站建设与制作德州

三水网站制作公司,网站建设与制作德州,网站开发类优惠及服务承诺,烟台微信网站建设Dart基础学习02--变量及内置类型 Dart中的变量 首先看一个变量的定义和赋值 var name Bob; 在Dart中变量名都是引用#xff0c;这里的name就是一个指向值为Bob的字符串的引用。 默认值 在Dart中没有初始化的变量都有一个默认值null#xff0c;哪怕是int型的变量它的初始值也…Dart基础学习02--变量及内置类型 Dart中的变量 首先看一个变量的定义和赋值 var name Bob; 在Dart中变量名都是引用这里的name就是一个指向值为Bob的字符串的引用。 默认值 在Dart中没有初始化的变量都有一个默认值null哪怕是int型的变量它的初始值也是null,因为在Dart中int也是一个对象。 int lineCount; assert(lineCount null); 注意这里引入一个Dart的重点知识在Dart中任何可以放入变量中的都属于对象而对象又都是类的一个实例。即使是数字方法null也都是对象并且所有的对象都继承自Object这个类。 可选类型 在Dart中可以选择使用静态类型来定义变量如下 String name Bob; 这样做的好处有以下几点 1.变量可以更好的表达你的意图。 2.编辑器或编译器可以通过变量的静态类型来检测代码中未知饿的错误。 final 和 const 如果一个变量不允许改变的话可以使用final和const关键字来代替var或者其他静态类型。其中final类型的变量只能被赋值一次而const类型的为编译时常量自然也无法改变其值。 一个用final定义的顶级变量或类成员变量只有在它第一次被使用的时候才会初始化。 final name Bob; // 也可以写作: final String name Bob; // name Alice; // 这一步会报错 注意final的这种懒惰型初始化方法可以有效的提升程序运行速度。 如果你想要让你的变量是编译时常量的话就可以使用const关键字但需要注意的是如果这个变量是一个类的成员变量的话就必须要使用static const。原因是如果没有声明一个类的对象事例的话类的成员变量是不存在的既然不存在自然就无法将其作为编译时常量了。更近一步说只有在程序运行且声明了类的对象实例的情况下其成员变量才是存在的。使用static修饰成员变量的话此变量就与对象实例无关了而可以直接通过类来获得。 const bar 1000000; // 压力单位 (dynes/cm2) const atm 1.01325 * bar; // 标准大气压 Dart的内置类型 Dart支持的内置数据类型有数字字符串布尔数组集合等。 数字类型 Dart提供两种数字类型 int 整型范围在 -2^53 to 2^53. double 64位双精度浮点类型采用 IEEE 754标准。 int和double都是num的子类num类型之间的基本操作有,-,*,/和位操作,。另外num对象有abs(),ceil(),floor和一些其他的运算方法。如果以上这些方法还满足不了你的话你可以使用Math库。 下面是一些整形变量的定义 var x 1; var hex 0xDEADBEEF; var bigInt 34653465834652437659238476592374958739845729; 下面是一下双精度型变量的定义 var y 1.1; var exponents 1.42e5; 你也可以使用下面这些方法将字符串转换为数字类型 // String - int var one int.parse(1); assert(one 1);// String - double var onePointOne double.parse(1.1); assert(onePointOne 1.1);// int - String String oneAsString 1.toString(); assert(oneAsString 1);// double - String String piAsString 3.14159.toStringAsFixed(2); assert(piAsString 3.14); int类型支持按位操作如,,,|,看一下下面几个例子 assert((3 1) 6); // 0011 1 0110 assert((3 1) 1); // 0011 1 0001 assert((3 | 4) 7); // 0011 | 0100 0111 字符串类型 在Dart中字符串采用utf-16的编码格式。可以使用单引号或双引号来创建变量。 var s1 Single quotes work well for string literals.; var s2 Double quotes work just as well.; var s3 It\s easy to escape the string delimiter.; var s4 Its even easier to use the other delimiter.; 在Dart中可以使用${expression}作为作为字符串的插值若expression 只是一个变量标识符的话可以省略{}。 var s string interpolation;assert(Dart has $s, which is very handy. Dart has string interpolation, which is very handy.); assert(That deserves all caps. ${s.toUpperCase()} is very handy! That deserves all caps. STRING INTERPOLATION is very handy!); 注意在Dart中用来判断两个对象是都等效。两个字符串等效的条件是他们包含相同的字符串。 在Dart中可以将几个字符串靠在一起或使用来连接它们 var s1 String concatenation works even over line breaks.; assert(s1 String concatenation works even over line breaks.);var s2 The operator works, as well.; assert(s2 The operator works, as well.); 另外还可以使用三个来定义多行的字符串 var s1 You can create multi-line strings like this one. ;var s2 This is also a multi-line string.; 可以使用r来定义一些原生字符串转义字符无效 var s rIn a raw string, even \n isnt special.; 布尔类型 在Dart中使用bool标识布尔类型。bool类型的只只有true或false。值得注意的是在Dart中只有true会被当作是正确而false或者其他数字null等都会被当作false。 下面这段代码在Dart中if条件是不成立的。应为name是一个对象。 var name Bob; if (name) {// Prints in JavaScript, not in Dart.print(You have a name!); } 下面这段代码中的Dart会进入else段而JavaScript则会进入if段 if (1) {print(JS prints this line.); } else {print(Dart in production mode prints this line.); } 数组 在Dart中使用List来表示数组这个是比较让我们不能接受的一个设计。不多说看具体怎么用吧 var list [1, 2, 3]; //List list [1, 2, 3]; assert(list.length 3); assert(list[1] 2); 在List中的单位也是从0开始的。 键值集合 在Dart中使用Map来表示键值类集合。其中的键值可以是任何对象且键不能重复。 下面看一下Map的具体用法 var gifts { // Keys Valuesfirst : partridge,second: turtledoves,fifth : golden rings };var nobleGases { // Keys Values2 : helium,10: neon,18: argon, }; 同样可以使用构造方法来定义Map var gifts new Map(); gifts[first] partridge; gifts[second] turtledoves; gifts[fifth] golden rings;var nobleGases new Map(); nobleGases[2] helium; nobleGases[10] neon; nobleGases[18] argon; 往Map中添加新键值 var gifts {first: partridge}; gifts[fourth] calling birds; // Add a key-value pair Map中检索键所对应的值 var gifts {first: partridge}; assert(gifts[first] partridge); assert(gifts[second] null); 获得Map中键值对的个数 var gifts {first: partridge}; gifts[fourth] calling birds; assert(gifts.length 2); 从Map中移除键值对 var nobleGases {54: xenon};assert(nobleGases[54] xenon);// containsKey方法可以用于判断是否包含某个Key assert(nobleGases.containsKey(54));nobleGases.remove(54); assert(!nobleGases.containsKey(54)); Map的更多用法可以参考Maps。 所有Dart学习内容和相关源码都会在github上的DartNovel开源项目进行同步欢迎关注。 转载于:https://www.cnblogs.com/zqlxtt/p/4825410.html
http://www.zqtcl.cn/news/53461/

相关文章:

  • 数据库2008做企业网站苏州网站开发公司济南兴田德润地址
  • 怎么向网站添加型号查询功能网页设计速成班培训
  • 关系的网站如何拷贝网站代码
  • 兰州专业做网站的公司有哪些网站后台更新 前台看不到
  • 网站建站工具seo关键词
  • 做ppt的网站有哪些简述网站规划的主要任务
  • 网站开发主要框架 后端苏州品牌网站设计企业
  • 2017招远网站建设中文wordpress模版
  • 网站开发毕业设计任务书范文品牌推广岗位职责
  • 百度网站大全在网站做推广要钱吗
  • 口碑好的天津网站建设精智WORDPRESS企业主题
  • 佛山白坭网站建设网站维护一般多久
  • 互联网站建设维护有关岗位珠海电视台app下载
  • 高明区住房和城乡建设局网站wordpress一级域名
  • jq网站模板上海今天出什么大事件了
  • 中山市做网站专业的免费推广网站58
  • 手机网站qq咨询代码wordpress 绿色
  • 广州建设网站首页系统开发中强调系统的整体性
  • 乐清站在那儿国际网站怎么开通
  • 介休门户网站怎么做教育类型的网站
  • 去网站做dnf代练要押金吗梵克雅宝手链
  • 电子商务网站建设技巧顺德品牌网站
  • 厦门建公司网站wordpress博客投稿
  • 做啥网站广西桂林自驾游攻略
  • 重庆网站seo建设深圳网站制作就找兴田德润
  • 海外网站如何做用户实名认证百度指数的各项功能
  • 网站新手引导怎么做免费个人网站域名
  • 怎么可以找到做公益的网站网站建设沟通话术
  • 搜狐网站开发做网站的去那里接单
  • 如何做国外的电商网站网站添加cms