【问题标题】:How can i increase only 1 microsecond to DateTime.now() in dart我怎样才能在 dart 中将 1 微秒增加到 DateTime.now()
【发布时间】:2023-01-08 01:57:53
【问题描述】:

我有以下

Dateime.now() + here i need to increase only 1 microsecond

所以想要的输出是Dateime.now() + 那是1 microsecond

我尝试了以下但它不起作用

print(DateTime.now()+const Duration(microsecond : 1);)

我怎样才能实现这个

【问题讨论】:

    标签: flutter dart duration


    【解决方案1】:

    这很好搞定。

    final now = DateTime.now();
    final later = now.add(const Duration(millisecond: 1));
    

    检查文档here

    或者在一行中完成:

    DateTime now = DateTime.now().add(Duration(milliseconds: 1));
    print(now);
    

    【讨论】:

      【解决方案2】:
      1. DateTime 没有定义operator +,但它确实有一个接受Durationadd method。 (您的代码中还有一些语法错误;分号放错了位置,Duration 的命名参数是microseconds,而不是microsecond。)

      2. 如果您正在使用 Dart for the Web 进行测试(例如使用 DartPad),您将不是由于 JavaScript 的限制而获得微秒精度。在 Dart 中运行以下代码虚拟机将显示微秒的变化:

        void main() {
          var now = DateTime.now();
          const microsecond = Duration(microseconds: 1);
          print(now);                  // Prints: 2022-04-23 20:39:28.295803
          print(now.add(microsecond)); // Prints: 2022-04-23 20:39:28.295804
        }
        

        另见:https://stackoverflow.com/a/60747710/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-23
        • 1970-01-01
        • 2011-01-10
        • 2014-06-20
        • 1970-01-01
        • 2013-11-13
        • 1970-01-01
        相关资源
        最近更新 更多