zoukankan      html  css  js  c++  java
  • dart 基础

     dartpad在线调试  :https://dartpad.dartlang.org  运行需要用墙

    vscode执行dart

    1.安装Code Runner

    2.安装dart插件

    3.配置环境变量

     D:Program Filesflutterincachedart-sdkin   --用的是flutter里的dartsdk,可以单独下载

    4.使用

    vscode新建dart文件

    右键run code   ,成功!

     可能出现的乱码问题

     

    ok

     GitLens 插件:逐行显示git提交修改时间

     

    一、数据类型

    1.num类型

    num类型有两个子类int类型和double类型

    2.String类型

    3.bool类型

    4.List类型

    main(){
    var list = ['tom', 'mei', 'jay'];
    print(list);//打印 [tom, mei, jay]
    print(list.length);// 3
    list.add('han');
    print(list);//[tom, mei, jay, han]
    //在 list 字面量之前添加 const 关键字,可以 定义一个不变的 list 对象
    var constantList = const [1, 2, 3];
    //constantList.add(4);//报错
    print(list[0]);// tom
    print('indexOf--' +list.indexOf('mei').toString());//根据值返回索引下标
    //删除指定元素,注意1不是下标,是值,如果值未找到不会报错
    print(list.remove('mei'));//true      
    print(list);//[tom, jay, han]
    }

    5.Map类型

    main(){
      Map name={'name':'tom','age':22};
      print(name);
    }

    二、常量与变量

    1.默认值 

    如果声明变量不赋值,所有类型的变量都默认为null包括int类型

    main(){
      int name;
      print(name);
    }

    2.常量 final const

    final  name='a';

    不允许被修改

    main(){
      final String name='a';
      name='aaa';
      print(name);
    }

    使用final const可以省略变量类型

    final  name='a';

     final和const的区别

     3.私有变量

    所有名字以下划线开头的变量,Dart 的编译器都会将其强制标记为私有的

    三、运算符

    四、函数.

    1.一般函数

    void say(){
      print('hello');
    }
    main(){
    say();
    }

    2.函数简写

    如果只有一行,可以用=> 代替{}

    main()=> print('a');

    3.可选参数

     可选参数分为:可选命名参数和可选位置参数。这两种方式不能同时在一个函数使用

    (1)可选命名参数

    运行

    还可以设置默认参数

    运行

    如果 name没有默认值,并且调用时也没有传参,则输出null

    (2)提示需要填写的可选参数

     pubspec.yaml

    name: my_app
    dependencies:
      meta: ^1.1.8

    提示

    (3)可选位置参数:

     

    五、流程控制

    1.if else

    main() {
      int count = 8;
      if (count == 6) {
        print('a');
      } else if (count == 7) {
        print('b');
      } else {
        print('c');
      }
    }

    2.for 循环

    main() {
      int count = 8;
      for (int i = 0; i < count; i++) {
        print(i);
      }
    }

    3.while   do-while

    main() {
      int count = 8;
      while (count != 0) {
        count--;
        if (count == 6) {
          print('count');
          continue;
        }
        if (count == 3) {
          break;
        }
        print(count);
      }
    }

    4.switch case

    main() {
      int count = 8;
      switch (count) {
        case 6:
          print('ok6');
          break;
        case 8:
          print('ok8');
          break;
        default:
          print('ok');
      }
    }

    5.Assert (断言)

    assert(bool)为真时正常往下执行,为假时推出程序,此代码只在调试模式下管用

    main() {
      int count = 8;
      assert(count < 7);
      print(count);
    }

     六、异常

    1.

    main() {
      throw '抛出异常';
    }

    2.

    main() {
      throw Exception('抛出指定异常');
    }

    3.try

    main() {
      try{
    
      }catch(e){
    
      }finally{
    
      }
    }

    七、泛型

    var names = List<String>();
    names.addAll(['Seth', 'Kathy', 'Lars']);
    print(names is List<String>); // true

    八、Type

    查看变量类型
    main(){
    //查看变量类型
    var i=10;
    print(i.runtimeType);
    }
  • 相关阅读:
    Python3中的新特性(3)——代码迁移与2to3
    Python3中的新特性(1)——新的语言特性
    Python3中的新特性(2)——常见陷阱
    输入一行字符,统计其中有多少个单词,单词之间用空格分隔开
    scanf(),gets(),gechar()函数小结
    CI控制器调用内部方法并载入相应模板的做法
    script脚本中写不写$(document).ready(function() {});的区别
    CentOS系统时间与现在时间相差8小时解决方法
    Linux下MySQL慢查询分析mysqlsla安装使用
    导入 Mysql 示例数据库 employees
  • 原文地址:https://www.cnblogs.com/buchizaodian/p/10399224.html
Copyright © 2011-2022 走看看