SimpleDateFormat 转时间出现错误

552 阅读1分钟

用 SimpleDateFormat 转时间的时候出现 错误:理论上要转为 整点,但是事与愿违 莫名其妙搞出了分钟

在这里插入图片描述

    public static void main(String[] args) throws ParseException {
        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
        String format = sf.format(sf.parse("2019-03-22 08:00").getTime() + Integer.parseInt("597") * 60 * 60 * 1000);
        System.out.println(format);
        Date d = sf.parse(format);
        GregorianCalendar gc = new GregorianCalendar();
        gc.setTime(d);
        if ((gc.get(12) == 0) && (gc.get(13) == 0))
            System.out.println("整点");
        else System.out.println("不是整点");

    }

解决方案: 将类型变为long类型 String format = sf.format(sf.parse("2019-03-22 08:00").getTime() + Integer.parseInt("597") * 60 * 60 * 1000L); 在这里插入图片描述 成功搞定,就是这么酸爽!