我java.util.Date在Scala中使用Java的类,想要比较一个Date对象和当前时间.我知道我可以使用getTime()来计算delta:
(new java.util.Date()).getTime() - oldDate.getTime()
Run Code Online (Sandbox Code Playgroud)
但是,这只留下了一个long代表毫秒.是否有更简单,更好的方式来获得时间增量?
我的应用程序使用AlarmManager,它自4年前开始运作.但我注意到它在某些设备上开始失败.
我很确定代码是正确的(我正在使用WakefulBroadcastReceiver,而setExactAndAllowWhileIdle用于带有Doze的设备),因为它在Nexus设备上运行良好,但在一些制造商的设备中失败(华为,小米......).
例如,华为设备有一种杀死应用程序的电池管理器,当应用程序被杀时,预定的警报会被取消.因此,在华为电池管理器中将应用程序设置为"受保护"可以解决问题.
但最近我注意到它没有使用更多的设备:小米,三星(也许它与新的"智能管理器"有关?)......似乎这种行为正在成为标准:杀死后台应用程序.
有人知道吗?是否有任何方法可以确保报警?
我有开始日期和结束日期.
我需要Java中这两个日期之间的月数.
例如
它有一个日期和一个2月日期.
它应该返回2.
LocalDateTime start = LocalDateTime.of(2018, 9, 2, 14, 17, 25, 135);
LocalDateTime end = LocalDateTime.of(2018, 9, 2, 14, 19, 59, 965);
Duration duration = Duration.between(start, end);
Run Code Online (Sandbox Code Playgroud)
我需要获得这种格式的结果:2:34.830。
分钟和纳秒 - 没问题:
System.out.println(duration.toMinutes());
System.out.println(duration.toNanos());
Run Code Online (Sandbox Code Playgroud)
但我怎样才能从这个例子中获得秒数 - 34 秒?
我需要让Day Hours Minutes达到特定日期示例:
日期="2015-08-08 16:38:28"
Current_Date = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date());
Run Code Online (Sandbox Code Playgroud)
并达到Date结果将是
2天1小时30分钟
android datepicker android-intent android-layout android-date
假设我有: 员工具有模型的startDate作为其属性变量和推广模式有promotionDate。我想知道员工在晋升之前工作了多长时间,我必须找到promotionDate 和startDate 之间的差异。如果我将 startDate 作为employee.getStartDate()和promotionDate 作为promotion.getPromotionDate,我怎么能找到在年月日差为任何日期,
任何帮助将非常感激。
更新:我解决了以下问题
String startDate = "2018-01-01";
String promotionDate = "2019-11-08";
LocalDate sdate = LocalDate.parse(startDate);
LocalDate pdate = LocalDate.parse(promotionDate);
LocalDate ssdate = LocalDate.of(sdate.getYear(), sdate.getMonth(), sdate.getDayOfMonth());
LocalDate ppdate = LocalDate.of(pdate.getYear(), pdate.getMonth(), pdate.getDayOfMonth());
Period period = Period.between(ssdate, ppdate);
System.out.println("Difference: " + period.getYears() + " years "
+ period.getMonths() + " months "
+ period.getDays() + " days ");
Run Code Online (Sandbox Code Playgroud)
谢谢你。
我正在尝试计算 Java 中两个日期之间的差异。例如,我有:
LocalDate TodayDate = LocalDate.now(); //That returns me ==> year/month/day
LocalDate ExpireDay = LocalDate.of("2018-01-12");
Run Code Online (Sandbox Code Playgroud)
我想知道两个日期之间相差多少天,我该怎么办?我尝试使用ExpireDay.minus(Period.ofDays());但它不起作用... :(
java ×5
date ×4
android ×2
alarmmanager ×1
android-date ×1
datepicker ×1
localdate ×1
time ×1
timedelta ×1