实现传入两个字符串类型的时间的相减

主要代码:

 1 import java.text.DateFormat;
 2 import java.text.SimpleDateFormat;
 3 import java.util.Date;
 4 
 5 
 6 public class TestDateTimeAdd
 7 {
 8 
 9     public static void main(String[] args)
10     {
11         try
12         {
13             subDateTime("2015-12-09 15:55:30", "2015-12-09 15:57:38");
14         }
15         catch (Exception e)
16         {
17             e.printStackTrace();
18         }
19     }
20     
21     
22     public static void subDateTime(String beginTime,String endTime) throws Exception
23     {
24         
25         /*
26          * 时间转化样式
27          */
28         DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
29         
30         /*
31          * 把字符类型的时间转化为标准时间样式
32          */
33         Date firstDateTimeDate = format.parse(beginTime);
34         Date secondDateTimeDate = format.parse(endTime);
35         
36         /*
37          * 得到时间的总毫秒数
38          */
39         long firstDateMilliSeconds = firstDateTimeDate.getTime();
40         long secondDateMilliSeconds = secondDateTimeDate.getTime();
41         
42         /*
43          * 两个日期相减
44          */
45         long subDateMilliSeconds = secondDateMilliSeconds - firstDateMilliSeconds;
46         
47         //毫秒转化为秒
48         int totalSeconds = (int) (subDateMilliSeconds/1000);
49         
50         /*
51          * 毫秒数转化为总天数
52          */
53 //        int days = totalSeconds / (3600*24);
54         int days_remains = totalSeconds % (3600*24);
55         
56         /*
57          * 天数转化为时
58          */
59         int hours = days_remains/3600;
60         int hours_remains = days_remains % 3600;
61         
62         /*
63          * 得到分钟数
64          */
65         int minutes = hours_remains / 60;
66         
67         /*
68          * 得到秒数
69          */
70         int seconds = hours_remains % 60;
71 
72         String outTime = ((hours < 10) ? "0" : "") + hours + ":"+
73                          ((minutes < 10) ? "0" : "") + minutes + ":" +
74                          ((seconds < 10) ? "0" : "") + seconds;
75          System.out.println(outTime);
76     }
77 }

 

转载于:https://www.cnblogs.com/0519xf/p/4825218.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Python 中,如果要计算两个字符串类型的日期的差,首先需要把它们转换为日期类型,然后再进行相减。可以使用 Python 标准库中的 `datetime` 模块来完成这个操作。 以下是一个例子: ``` from datetime import datetime date_format = "%Y-%m-%d" date1_str = "2022-06-15" date2_str = "2022-07-15" date1 = datetime.strptime(date1_str, date_format) date2 = datetime.strptime(date2_str, date_format) difference = date2 - date1 print("两个日期的差为:", difference.days, "天") ``` 在这个例子中,首先定义了一个日期格式 `date_format`,然后使用 `datetime.strptime` 函数将字符串类型的日期转换为日期类型,最后计算两个日期的差并将其转换为天数。 ### 回答2: 在Python中,可以使用`datetime`模块来进行日期的计算和操作。要计算两个字符串日期的差值,首先需要将字符串转换为`datetime`对象,然后通过减法运算来获取它们的差值。具体步骤如下: 1. 导入`datetime`模块:`from datetime import datetime` 2. 使用`strptime()`方法将字符串转换为`datetime`对象,指定日期格式。例如,如果字符串的格式为"年-月-日",可以使用以下方式进行转换: ``` date_str1 = '2022-01-01' date1 = datetime.strptime(date_str1, '%Y-%m-%d') ``` 3. 将第二个字符串也转换为`datetime`对象: ``` date_str2 = '2022-02-01' date2 = datetime.strptime(date_str2, '%Y-%m-%d') ``` 4. 通过减法运算获取两个日期的差值(以天为单位): ``` delta = date2 - date1 days_diff = delta.days ``` 最后,`days_diff`变量将存储两个日期之间的差值,以天为单位。您可以根据需要对差值进行进一步的处理和转换。 ### 回答3: 在Python中,我们可以使用datetime模块来处理日期和时间。要计算两个日期之间的差异,可以将日期字符串转换为datetime对象,然后相减。 首先,我们需要导入datetime模块: ```python import datetime ``` 然后,我们可以使用`strptime()`函数将字符串日期转换为datetime对象。假设我们有两个字符串日期:date1和date2,格式为"年-月-日": ```python date_format = "%Y-%m-%d" date1 = "2021-01-01" date2 = "2021-12-31" datetime1 = datetime.datetime.strptime(date1, date_format) datetime2 = datetime.datetime.strptime(date2, date_format) ``` 接下来,我们可以简单地将datetime2减去datetime1,以获取它们之间的时间差: ```python diff = datetime2 - datetime1 ``` 最后,我们可以使用`days`属性来获取天数差异,并将其打印出来: ```python print(diff.days) ``` 完整的代码如下: ```python import datetime date_format = "%Y-%m-%d" date1 = "2021-01-01" date2 = "2021-12-31" datetime1 = datetime.datetime.strptime(date1, date_format) datetime2 = datetime.datetime.strptime(date2, date_format) diff = datetime2 - datetime1 print(diff.days) ``` 以上代码将输出365,表示date1和date2之间相差365天。 希望以上内容能帮助到你!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值