一,概述

  • Duration表示从一个时间点到另一个时间点的时间差
  • 如果是一个较晚的时间点和一个较早的时间点,Duration可能是负数

二,创建Duration

  • 唯一的构造函数创建Duration对象

    Duration({int days: , int hours: , int minutes: , int seconds: , int milliseconds: , int microseconds: })
  • 可以使用其中的一个或者几个参数创建
    • 只是用其中的一个参数

      Duration ration = Duration(days: );
      print(ration); //24:00:00.000000
      Duration ration1 = Duration(hours: );
      print(ration1); //10:00:00.000000
    • 只是用其中的两个参数
      Duration ration2 = Duration(days: , hours: );
      print(ration2); //27:00:00.000000
    • 使用所有的参数
      Duration ration3 = Duration(days: , hours: , minutes: , seconds: , milliseconds: , microseconds: );
      print(ration3); //50:23:34.056089

三,相关运算

  • 示例

    Duration time1 = Duration(days: , hours: , minutes: , seconds: , milliseconds: , microseconds: );
    Duration time2 = Duration(days: , hours: , minutes: , seconds: , milliseconds: , microseconds: );
    print(time1); //25:01:01.001001
    print(time2); //50:02:02.002002
    • print(time1 + time2); //75:03:03.003003
    • print(time1 - time2); //-25:01:01.001001
    • print(time1 * ); //50:02:02.002002
    • 除(取整)
      print(time2 ~/ ); //16:40:40.667334
    • 比较
      print(time1 > time2); //false
      print(time1 >= time2); //false
      print(time1 == time2); //false
      print(time1 < time2); //true
      print(time1 <= time2); //true
    • 取相反值
      print(-time1); //-25:01:01.001001
      print(-(time1 - time2)); //25:01:01.001001

四,相关函数

  • 示例

    Duration time3 = -Duration(days: , hours: , minutes: , seconds: , milliseconds: , microseconds: );
    print(time3); //-25:01:01.001001
    • 取绝对值

      print(time3.abs()); //25:01:01.001001
    • 比较, 返回值, 0: 相等, -1: time1 < time2, 1: time1 > time2
      print(time1.compareTo(time2)); //-1
    • 字符串形式
      print(time1.toString());

【Dart学习】--之Duration相关方法总结的更多相关文章

  1. Dart 学习资料

    Dart 学习资料: 学习资料 网址 Dart 编程语言中文网 http://dart.goodev.org/ Dart 官方包仓库 https://pub.dartlang.org/ 你想了解的Da ...

  2. Dart学习笔记-运算符-条件表达式-类型转换

    Dart学习笔记-运算符-条件表达式-类型转换 一.运算符 1.算术运算符 + (加)- (减)* (乘)/ (除)~/ (取整) %(取余) 2.关系运算符 == (等等) != (不等) > ...

  3. 【Dart学习】--之Runes与Symbols相关方法总结

    一,Runes 在Dart中,Runes代表字符串的UTF-32字符集, 另一种Strings Unicode为每一个字符.标点符号.表情符号等都定义了 一个唯一的数值 由于Dart字符串是UTF-1 ...

  4. 【Dart学习】--之Iterable相关方法总结

    一,概述 按顺序访问的值或元素的集合, List集合也是继承于Iterable List和Set也是Iterable,dart:collection库中同样有很多 部分Iterable集合可以被修改 ...

  5. 【dart学习】之字典(Map)的相关方法总结

    一,概述 通常来讲,Map是一个键值对相关的对象,键和值可以是任何类型的对象.每个键只出现一次,而一个值则可以出现多次.映射是动态集合. 换句话说,Maps可以在运行时增长和缩小. dart:core ...

  6. 【Dart学习】--Dart之数字(num)相关方法总结

    一,部分属性 用法一(figureA) int figureA = -93; 是否为负数 print(figureA.isNegative); figureA是否是有限的 print(figureA. ...

  7. 【Dart学习】--Dart之数组(List)的相关方法总结

    一,初始化List 非固定长度list var testList = List(); print(testList.length);//输出0 固定长度List var testList2 = Lis ...

  8. 【Dart学习】--Dart之正则表达式相关方法总结

    一,部分属性 RegExp exp = new RegExp(r"(\w+)"); 返回正则表达式的哈希码 print(exp.hashCode); 正则表达式是否区分大小写 pr ...

  9. 【Dart学习】--Dart之字符串(String)的相关方法总结

    字符串定义使用单引号或双引号 String a = "abcdefg"; String b = '; 创建多行字符串,保留内在格式使用三个单引号或三个双引号 创建多行字符串,保留内 ...

随机推荐

  1. jmeter测试https请求

    测试https请求时,需要添加证书 目录 1.下载证书 2.导入 3.执行https请求 1.下载证书 在浏览器中打开要测试的https协议的网站,以谷歌为例打开,下载证书到桌面 4.一直点击下一步 ...

  2. Rust SDL2配置

    github地址 https://github.com/Rust-SDL2/rust-sdl2 clone或下载这个项目 本文使用的是MSVC版本 上面链接页面搜Windows (MSVC) 得知需要 ...

  3. Win7崩溃程序目录

    很烦,占用系统空间,毫无用处 C:\Users\你的用户名\AppData\Local\CrashDumps C:\Users\你的用户名\AppData\Local\Microsoft\Window ...

  4. 《JAVA设计模式》之桥接模式(Bridge)

    在阎宏博士的<JAVA与模式>一书中开头是这样描述桥梁(Bridge)模式的: 桥梁模式是对象的结构模式.又称为柄体(Handle and Body)模式或接口(Interface)模式. ...

  5. zookeeper+dubbo+demo

    zookeeper下载地址 https://archive.apache.org/dist/zookeeper/ zookeeper安装和使用 windows环境 https://blog.csdn. ...

  6. 数据溢出-varchar类型

    数据溢出一.varchar(65535)1.在charset=latin1,因为有额外的开销,实际只能存65532 CREATE table demo( a ) )charset=latin1 eng ...

  7. emacs配置&博客界面源代码

    emacs配置 如果想要考场简单配置也可以去下面看,需要别的考场配置可以自己在下面比较全的里面找 考试备忘录(有新的就会更的...) By Junlier (global-set-key [f9] ' ...

  8. [Linux Test Project] [PATCH] Fix an bad variable name erro in runltp script

    [PATCH] Fix an bad variable name erro in runltp script (/opt/ltp/runltp) Hi All,   I got an error fo ...

  9. 2019 Multi-University Training Contest 1 - 1012 - NTT

    题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=6589 题解连接: https://www.cnblogs.com/xusirui/p/1122945 ...

  10. python学习第三十天函数的形参,实参及函数文档

    python函数的形参是定义函数def 函数名 小括号里面的变量,实参是调用函数时候的值,函数文档是提供函数功能的开发文档,下面 详细说明系列方法 1,函数的形参 def chan(name): pr ...