一,概述

  • 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. jenkins之定时任务配置

    jenkins可以配置任务定时执行 1.jenkins配置解释说明 在每个job的配置项里,有一个构建触发器配置,勾选“定时检查版本库选项”,在输入框可根据需求配置时间: 日程表填写格式: 日程表(S ...

  2. 通过VLC的ActiveX进行二次开发,实现一个多媒体播放器 2011-04-10 00:57:23

    http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=25498312&id=218294  通过VLC的ActiveX进行二 ...

  3. 16/7/11_PHP-PHP异常处理

    抛出一个异常 从PHP5开始,PHP支持异常处理,异常处理是面向对象一个重要特性,PHP代码中的异常通过throw抛出,异常抛出之后,后面的代码将不会再被执行. 既然抛出异常会中断程序执行,那么为什么 ...

  4. 浮点数float累加误差解决方式总结

    首先是float累加产生误差的原因,该部分转自:http://blog.csdn.net/zhrh0096/article/details/38589067 1.  浮点数IEEE 754表示方法 要 ...

  5. PHP中的九大缓存技术

    1.全页面静态化缓存也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程.此种方式,在CMS系统中比较常见,比如dedecms: 一种比较常用的实现方式 ...

  6. 微信小程序(三)--小程序UI开发

    一.UI介绍 所谓的UI(user Interface)开发指的就是小程序应用界面的开发,在小程序开发框架中会为我们提供一系列的基础组件,例如HTML开发中为我们所提供的一些最基础的标签.需要注意的是 ...

  7. Java_1.Java符号体系

    Java符号包含五类:标识符.关键字.常量及字面量.运算符.分隔符 1.标识符 定义:用于标明程序中元素的名字,如类.方法和变量 命名规则: ·由字母.数字.下划线(_)和美元符号($)构成的字母序列 ...

  8. Tensorflow机器学习入门——MINIST数据集识别

    参考网站:http://www.tensorfly.cn/tfdoc/tutorials/mnist_beginners.html #自动下载并加载数据 from tensorflow.example ...

  9. Java 8实战之读书笔记三:函数式数据处理

    二.函数式数据处理 第4章 引入流 流是Java API的新成员,它允许你以声明性方式处理数据集合(通过查询语句来表达,而不是临时编写一个实现). 示例: import static java.uti ...

  10. hud2243 考研路茫茫——单词情结

    考研路茫茫--单词情结 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem ...