为了账号安全,请及时绑定邮箱和手机立即绑定

如何将 30 分钟添加到我的输入时间并循环播放,直到我以 12 小时格式(上午/下午)输入结束时间

如何将 30 分钟添加到我的输入时间并循环播放,直到我以 12 小时格式(上午/下午)输入结束时间

慕姐4208626 2021-07-09 14:02:34
这是我的代码,但它不会停止循环,直到我的结束输入时间它继续循环,我只想循环它直到我以 12 小时格式结束输入时间。我怎样才能做到这一点?package javaapplication;import java.time.LocalTime;import java.text.ParseException;public class JavaApplication {    public static void main(String[] args) throws ParseException {        String time1 = "09:00"; //my first input time         String timeEnds = "4:00"; //my second input time         LocalTime timeStart = LocalTime.parse(time1);         while(time1!=timeEnds) {             timeStart = timeStart.plusMinutes(30);                        System.out.println(""+timeStart);                 }    }}
查看完整描述

1 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

请注意,"4:00"就本地时间而言,这不是有效的格式LocalTime.parse(CharSequence)。你应该使用"04:00".


这里使用的一个技巧是首先检查结束时间是否在开始时间之前。如果是,则结束时间与开始时间在一天的不同一半。在这种情况下,我们将 12 小时添加到结束时间。


打印时间时,我们使用自定义格式hh:mm。小写字母的h意思是“12 小时制的小时”。


String time1 = "09:00"; //my first input time


String timeEnds = "04:00"; //my second input time

LocalTime timeStart = LocalTime.parse(time1);

LocalTime timeEnd = LocalTime.parse(timeEnds);

if (timeStart.isAfter(timeEnd)) {

    timeEnd = timeEnd.plusHours(12);

}


while(timeStart.isBefore(timeEnd)) {

    timeStart = timeStart.plusMinutes(30);

    System.out.println(timeStart.format(DateTimeFormatter.ofPattern("hh:mm")));


}


查看完整回答
反对 回复 2021-07-14
  • 1 回答
  • 0 关注
  • 139 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信