根据产品策略某本书可以设置包月到期时间,需要计算指定时间到包月到期时间还有多少分钟,不足60S的不计入。
根据产品策略某本书可以设置包月到期时间,需要计算指定时间到包月到期时间还有多少分钟,不足60S的不计入。
输入共两行第一行为指定时间,格式为 2020-02-01 12:00:00第二行为到期时间,格式为 2020-02-01 12:01:00
输出参数为一行,为剩余分钟如1
2020-02-01 12:00:00 2020-02-01 12:01:00
1
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class Main { public static void main(String[] args) throws ParseException { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Scanner scanner = new Scanner(System.in); String strBegin = scanner.nextLine(); String strEnd = scanner.nextLine(); Date begin = simpleDateFormat.parse(strBegin); Date end = simpleDateFormat.parse(strEnd); long res = end.getTime() - begin.getTime(); System.out.println(res / 1000 / 60); } }
import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.Scanner; import java.time.Duration; public class Main{ public static void main(String[] args) { Scanner scan = new Scanner(System.in); // 读取输入数据"yyyy-MM-dd HH:mm:ss" String begin = scan.nextLine(); String after = scan.nextLine(); LocalDateTime localDateBegin = LocalDateTime.parse(begin, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); LocalDateTime localDateAfter = LocalDateTime.parse(after, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); Duration between = Duration.between(localDateBegin, localDateAfter); long minutes = between.toMinutes(); // 使用工具类计算分钟差值 System.out.println(minutes); } }
public static String dateSub(String a, String b) { try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); sdf.parse(a); LocalDateTime t1 = LocalDateTime.parse(a, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), t2 = LocalDateTime.parse(b, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); long pass = t1.until(t2, ChronoUnit.MINUTES); return String.valueOf(Math.abs(pass)); } catch (Exception e) { System.out.println(String.format("格式转化错误:%s, 检查是否格式输入错误", e.getMessage())); } return "0"; } public static void main(String[] args) { System.out.println("请输入指定的两个日期【小者在前,大者在后,格式:yyyy-MM-dd hh:mm:ss】:"); Scanner sc = new Scanner(System.in); String a = sc.nextLine(), b = sc.nextLine(); sc.close(); System.out.println(dateSub(a, b)); }
package com.dume.server.face; import javax.xml.crypto.Data; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; /** * 根据产品策略某本书可以设置包月到期时间, * 需要计算指定时间到包月到期时间还有多少分钟,不足60S的不计入。 */ public class ExpireDate { public static void main(String[] args) { System.out.println("请输入产品到期时间,格式为“yyyy-MM-dd HH:mm:ss” :"); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Scanner scanner = new Scanner(System.in); String string = scanner.nextLine(); Date end = new Date(); try{ end = simpleDateFormat.parse(string); }catch(Exception e){ System.out.println("时间格式错误!"); } long endTime = end.getTime(); long nowTime = System.currentTimeMillis(); if(endTime<nowTime){ System.out.println("到期时间不能在此刻之前!"); }else{ System.out.println("到期时间剩余" +(endTime-nowTime)/(60*1000)+"分钟"); } } }