Flutter - >dart基础01

安装 dart sdk

略。

dart 初试

//dart 中所有代码都以main函数为基础
main() {
  print('hello dart');
}

//没有返回值的main函数
void main(){
  print('hello dart!');
}

一:dart 数据类型

  • string 类型
//定义字符串
  String first_name = 'kang';

  var last_name = 'jiahao';  // var 在定义字符串的时候会有一个自动类型推断的过程。

  // 定义多行字符串
  var warp_str = '''first str
    second str
    third str
  ''';


  print(first_name);
  print(last_name);
  print(warp_str);

  //拼接字符串
  print('$first_name $last_name');
  print(first_name + ' ' + last_name);
  • 数值类型 int / double, boolean类型
//定义 int double 类型
  var a = 123;
  int b = 245;

  var c = 10.5;
  double d = 12.9;
  d = 15;
  //double 类型精度高于int,所以可以同时被int 和 double类型的赋值。
  print(a);  //123
  print(b);  //245
  print(c);  //10.5
  print(d);  //15.0  

  // boolean类型同javascript ,有两个值  true/false
  var flag = true;
  var flag2 = false;
  // var flag2 = 123;   // 不能被赋值为其他类型

  print(flag);
  print(flag2);

  //比较类型  (dart中不会做类型转换)
  String a = '123';
  int b = 123;
  print(a == b);  //false
  
  • list(数组,集合类型)
//数组,集合类型
  //第一种定义List的方式
  var list01 = ['jack','tom','mary'];
  print(list01);
  print(list01.length);


  //第二种定义List的方式
  var list02 = new List();
  list02.add('张三');
  list02.add('李四');
  print(list02);


  //定义list,指定类型
  //定义一个string 数组
  var list03 = new List<String>();
  • maps 类型(类似 json)
//第一种定义maps的方式
// maps 数据类型
  //注意:key值必须使用 单引号或者双引号包裹
  var person = {
    'name':'jiahao kang',
    'age':20,
    'work':['程序员','外卖员'],
  };

  print(person);
  //使用某个key-value,不是javascript中的.
  print(person['name']);

//第二种定义maps的方式
var person2 = new Map();

  person2['name'] = '康家豪';
  person2['age'] = 21;
  person2['work'] = ['程序员','外卖员'];

  print(person2);
  print(person2['name']);
  • dart 数据类型判断
  //dart 类型判断 使用 is 关键字
  var a = 123;
  print(a is int);  //true

2.dart 运算符 类型转换 循环语句

  • 算数运算符 + - * / ~/(取整) %(取余)
  • 关系运算符 == != > < >= <=
  • 逻辑运算符 ! && ||
  • 赋值运算符 = ??= (如果某个变量值为空的话,就将后面的值赋值给变量)
  • 条件表达式 if else switch case 三目运算符 ?? 运算符
  • 一些不同于javascript的运算符的展示
//??= 运算符在a没有被赋值的时候,会将90赋值给a,当a被赋值为100的时候,不执行
  var a = 100;
  a ??= 90;
  print(a); // 100


  // ?? 运算符  在a有值的时候取a得值赋值给b,在a没有值的时候去 后面的10 赋值给b
  var a;
  var b = a ?? 10;
  print(b);  //10

  var a = 100;
  var b = a ?? 10;
  print(b);  //100
  • 类型转换
//类型转换
  // Number <-> String  
  int a = 123;    //toString()
  print(a.toString());

  String b = '234';   // int.parse()   浮点类型 double.parse()
  print(int.parse(b));
  • 循环语句 for循环 while do…while break continue

dart 集合类型 List Set Map 详解 以及一些循环语句

  • list 及
    • 相关属性 (length isEmpty reversed)
var list = ['top','left','right','bottom'];
var newList = list.reversed.toList();  //需要将转换好的数据转化为 list 类型
  • 相关方法
  add();   //添加数据
  addAll();  //拼接数组
  indexf();   //同javascript
  remove();  //删除

  //......具体查文档
  • Set 及 相关属性
    • set 用它最主要的功能是去除数组中的重复内容,set是没有顺序且不能重复的集合,所以不能通过索引值去获取值(同 javascript)
  var s = new Set();
  s.add('apple');
  s.add('apple');
  s.add('banana');

  print(s);  //{apple,banana};
  print(s.toList());  //['apple','banana'];
  • map 及

    • 相关属性 keys(获取所有key值) values(获取所有value值) isEmpty(是否为空)
    • 相关方法 remove(key) addAll({…})(合并对象)
  • 数组方法 forEach() => forEach(js) map() => map(js) where() every() => every(js) any() 大体同javascript

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值