• 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
      • 动态数据类型
  • 相关阅读:
    大学生HTML作业节日网页 HTML作业节日文化网页期末作业 html+css+js节日网页 HTML学生节日介绍 HTML学生作业网页视频
    【Java8】java.time 根据日期获取年初年末、月初月末、日初日末
    npm install一直卡着不动
    dubbo2.7时间轮的应用
    通信原理板块——奇偶监督码、方阵码、恒比码、正反码
    Java基础浅聊Future带来的异步优点和缺点
    ZYNQ多通道数据采集与LWIP传输系统
    CMU15445 (Fall 2020) 数据库系统 Project#2 - B+ Tree 详解(上篇)
    面经pc端项目
    一键部署服务(DNS,DHCP,RAID)
  • 原文地址:https://blog.csdn.net/shadowfall/article/details/126489077