Fluter 学习笔记 之 Dart 语言入门

Fluter 学习笔记 之 Dart 语言入门基本类型var可以定义变量,如vartag=”666″,这和JS、Kotlin等语言类似,同时Dart属于动态类型语言,支持闭包。Dart中number类型分为int和double,其中java中的long对应的也是Dart中的int类型。Dart中没有float类型。Dart下只有bool型可以用于if等判断,不…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

基本类型

var 可以定义变量,如 var tag = “666” ,这和 JS 、 Kotlin 等语言类似,同时 Dart 属于动态类型语言,支持闭包。

Dart 中 number 类型分为 int 和 double ,其中 java 中的 long 对应的也是 Dart 中的 int 类型。Dart 中没有 float 类型。

Dart 下只有 bool 型可以用于 if 等判断,不同于 JS 这种使用方式是不合法的 var g = “null”; if(g){ } 。

Dart 中,switch 支持 String 类型。

 

内置类型

Number 类型:int(整型),double(浮点型)

String 类型:字符串 打印时如果加上 r” “则里面的内容不会被转义,字符串后面加[]是去除字符串里面该下标的字符

插值表达式:

int a = 1;
int b = 2;
print("a + b = ${ a + b }");

//输出结果为 a + b = 3

print("a = $a");

//输出结果为 a = 1

Jetbrains全家桶1年46,售后保障稳定

BOOL 类型:(true, false)

List:(数组,列表),创建方式

//创建 list
var list = [1,2,3];
//创建不可变 list
var list = const[1,2,3];
//构造创建
var list = new List();

Map 类型

//创建 Map
var lan = {"first":"dart","second":"Java"};

//创建不可变 Map
var lan = const {"first":"dart","second":"Java"};

//构造创建
var lan = new Map();

 

变量

Dart 不需要给变量设置 setter getter 方法, 这和 kotlin 等类似。Dart 中所有的基础类型、类等都继承 Object ,默认值是 NULL, 自带 getter 和 setter ,而如果是 final 或者 const 的话,那么它只有一个 getter 方法。

Dart 中 final 和 const 表示常量,且只能被赋值一次,不能二次修改,比如 final name = ‘GSY’; const value= 1000000; 同时 static const 组合代表了静态常量。其中 const 的值在编译期确定,final 的值要到编译时才确定。(ps Flutter 在 Release 下是 AOT 模式。)

Dart 下的数值,在作为字符串使用时,是需要显式指定的。比如:int i = 0; print(“aaaa” + i); 这样并不支持,需要 print(“aaaa” + i.toString()); 这样使用。这和 Java 与 JS 存在差异。所以在使用动态类型时,需要注意不要把 number 类型当做 String 使用。

Dart 中数组等于列表,所以 var list = []; 和 List list = new List() 可以简单看做一样。

 

 

方法

Dart 下 ?? 、??= 属于操作符,如: AA ?? “999” 表示如果 AA 为空,返回999;AA ??= “999” 表示如果 AA 为空,给 AA 设置成 999。

Dart 方法可以设置 参数默认值 和 指定名称 。比如: getDetail(Sting userName, reposName, {branch = “master”}){} 方法,这里 branch 不设置的话,默认是 “master” 。参数类型 可以指定或者不指定。调用效果: getRepositoryDetailDao(“aaa”, “bbbb”, branch: “dev”);

Dart 不像 Java ,没有关键词 public 、private 等修饰符,_下横向直接代表 private ,但是有 @protected 注解。

Dart 中多构造函数,可以通过如下代码实现的。默认构造方法只能有一个,而通过Model.empty() 方法可以创建一个空参数的类,其实方法名称随你喜欢。而变量初始化值时,只需要通过 this.name 在构造方法中指定即可:

class ModelA {
  String name;
  String tag;
  
  //默认构造方法,赋值给name和tag
  ModelA(this.name, this.tag);

  //返回一个空的ModelA
  ModelA.empty();
  
  //返回一个设置了name的ModelA
  ModelA.forName(this.name);
}

基础语法学习参考视频课程:https://www.imooc.com/video/19041,或者文章:https://www.jianshu.com/p/3d927a7bf020

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234807.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 迈克菲杀毒软件创始人(John McAfee)被发现在监狱死亡「建议收藏」

    迈克菲杀毒软件创始人(John McAfee)被发现在监狱死亡「建议收藏」律师近日告诉路透社,西班牙高等法院批准将出生于英国的美国科技企业家JohnMcAfee引渡到美国后,周三他在巴塞罗那监狱自杀身亡。McAfee的律师JavierVillalba表示,今年75岁的迈克菲杀毒软件创始人约翰·迈克菲日前被发现死于位于巴塞罗那一家监狱的牢房中。而死亡时间刚好是西班牙法院判决他被引渡回美国几个小时后。这位反病毒软件先驱在九个月的监禁中因绝望而上吊。75岁的McAfee在上个月的法庭听证会上表示,鉴于他这个年纪,如果在美国被定罪,他将在监狱中度过余生。他说:“我希望..

    2022年9月23日
    4
  • Apache tez_apache ii

    Apache tez_apache ii转发自这位大佬博客:https://www.cnblogs.com/rongfengliang/p/6991020.html你可能听说过ApacheTez,它是一个针对Hadoop数据处理应用程序的新分布式执行框架。但是它到底是什么呢?它的工作原理是什么?哪些人应该使用它,为什么?如果你有这些疑问,那么可以看一下BikasSaha和ArunMurthy提供的呈现“ApacheTez:加…

    2025年8月7日
    5
  • Spring Boot 配置ContextPath「建议收藏」

    Spring Boot 配置ContextPath「建议收藏」Springboot默认是/ ,这样直接通过http://ip:port/就可以访问到index页面,如果要修改为http://ip:port/path/ 访问的话,那么需要在Application.properties文件中加入server.context-path=/你的path,比如:spring-boot,那么访问地址就是http://ip:port/spring-boot路径。

    2025年11月20日
    6
  • IDEA这些既好用又好玩的三十多个宝贝插件你还不知道吗?「建议收藏」

    小编整理的一些好用的有趣的插件如果有什么问题,欢迎大家评论,群文件也有这些IDEA插件QQ交流群:99979568IDEA下载插件教程如果无法在线下载插件,文末有我下载好的安装包,以及安装包安装的教程强烈推荐的插件PresentationAssistant快捷键展示Codota代码智能提示AlibabaJavaCodeGuidelines—阿里巴巴Java代码规范Translation-必备的翻译插件SequenceDiagra.

    2022年4月8日
    49
  • JavaScript中splice方法的使用「建议收藏」

    JavaScript中splice方法的使用「建议收藏」JavaScript中splice方法的使用splice的基本用法删除操作插入操作替换操作splice一次性删除多个元素splice的基本用法在JavaScript中,arrObject.splice()方法是处理数组的利器,利用它可以实现在指定位置删除、替换、插入指定数量的元素。其语法为:arrayObject.splice(index,howmany,item1,…,itemX)含义为从index开始,删除howmanry个元素,并在原地插入item1,…,itemN,最后返回被删除的数组

    2025年11月12日
    4
  • pycharm怎么配置tensorflow环境_python tensorflow安装

    pycharm怎么配置tensorflow环境_python tensorflow安装Pycharm安装并搭建Tensorflow开发环境下载并安装pycharm1.下载2.pycharm配置python环境安装tensorflow1.输入清华仓库镜像2.创建tensorflow环境3.启动tensorflow环境4.安装cpu版本的TensorFlow5.测试TensorFlowPycharm中配置TensorFlow环境在操作之前先安装好python环境,我是安装的Anaconda,Anaconda下载安装教程可参考:https://blog.csdn.net/Chen_Meng_

    2022年8月28日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号