Dart的数据类型

Dart数据类型

Number,String,Boolean,List,Set,Map,其他

常见API查询

  • https://api.dart.cn/stable/dart-core

Number

  • num数字类型(既可以表示整数,也可以表示小数)
    • int 表示整数 (必须是整数)
    • double 表示浮点数 (既可以是整数,也可以是小数)
  • Number上的方法(看官网)
    • toString() 转换为字符串
    • toInt() 向下取整
    • round() 四舍五入
    • toStringAsFixed(4)
    • remainder(4) 返回余数
    • compareTo(12) 数字比较 0:相同 1: 大于 -1:小于
    • gcd() 最大公约数

String

  • String类型
    • var 单引号双引号都可以
    • 三个引号可以声明包含换行符的字符串
  • 常见API
    • spilt(’ ') 字符串分割
    • trim() 去除字符串两边的空格
    • isEmpty 是否为空字符串
    • isNotEmpty
    • replaceAll(RegExp(r’\d+', ‘_’) 替换所有 支持正则
    • indexOf() 查找
    • contains()是否包含
  • 正则表达式
    • RegExp(r’正则表达式’)

Boolean

  • bool flag1 = true; 通过bool关键字来表示布尔类型
  • 布尔类型只有两个值:true false
  • 对变量进行判断if(varname)改为 if(varname == 0)要显示地检查布尔值
  • false == null // true

List

  • 字面量声明方式
    • List list = []; 不限定元素的数据类型
    • List list = []; 限定元素的数据类型
  • 构造函数声明方式(已弃用)
    • List list = new List.empty(true); 不限制长度的空列表
    • List list = new List.filled(3, 0); 限制长度的填充列表
  • 扩展运算符
    • var list = [1, 2, 3];
    • var list2 = [0, …?list]; // ?如果list为null 使用?可以消除警告
  • 常用API
    • add 给List 添加元素
    • indexOf和lastIndexOf 查找
    • remove 删除
    • removeAt 删除下标
    • insert 插入
    • sort 排序 growableList.sort((a, b) => a.compareTo(b));
    • shuffle 乱序
    • join 拼接
  • 遍历
    • for
    • for … in
    • forEach 只遍历 不可打断
    • map 遍历处理元素,然后生成新的list
    • where 返回满足条件的数据
    • any 只要有一项满足 返回true
    • every 所有的元素都满足 返回true
    • expand 降纬 list.expand(item => item).toList();
    • fold 折叠 list.fold(2, (p, item) => p + item);

Set

  • 声明方式
    • var nums = {1, 2, 3};
    • var mySet = new Set(); mySet.add(‘a’); mySet.add(‘b’);
  • 常用API
    • add
    • addAll
    • intersection 求交集
    • union 求并集
    • difference 求差集
    • first 第一个元素
    • last 最后一个元素
    • remove

Map

  • Map是无序键值对映射,通常称为哈希或者字典
  • 声明方式
    • var map = { key1: value1, key2: value2 };
    • var map = new Map();
    • map[‘key’] = value;
  • 常用API
    • map[‘key’] 获取该key的值
    • containsKey 判断Map中的key是否存在 map.containsKey(‘name’);
    • putIfAbsent(‘gender’, () => ‘男’); 如果存在该key 就什么都不做 如果不存在就写入
    • keys
    • values
    • removewhere

其他

  • Runes(符文)
    • Runes 是一个32位字符对象,它可以把文字转换为表情符号或者特定的文字
    • print(‘\u{1f44d}’) => 👍
    • https://copychar.cc/
  • Sysbol
    • 在Dart中符号用#开头来表示的标识符
  • dynamic
    • 动态数据类型
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MaxLoongLvs

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值