`
- 浏览:
228084 次
- 性别:
- 来自:
北京
-
使用java.util.Calendar返回间隔天数
java 代码
- **
- * Calculates the number of days between two calendar days in a manner
- * which is independent of the Calendar type used.
- *
- * @param d1 The first date.
- * @param d2 The second date.
- *
- * @return The number of days between the two dates. Zero is
- * returned if the dates are the same, one if the dates are
- * adjacent, etc. The order of the dates
- * does not matter, the value returned is always >= 0.
- * If Calendar types of d1 and d2
- * are different, the result may not be accurate.
- */
- static int getDaysBetween (java.util.Calendar d1, java.util.Calendar d2) {
- if (d1.after(d2)) {
- java.util.Calendar swap = d1;
- d1 = d2;
- d2 = swap;
- }
- int days = d2.get(java.util.Calendar.DAY_OF_YEAR) -
- d1.get(java.util.Calendar.DAY_OF_YEAR);
- int y2 = d2.get(java.util.Calendar.YEAR);
- if (d1.get(java.util.Calendar.YEAR) != y2) {
- d1 = (java.util.Calendar) d1.clone();
- do {
- days += d1.getActualMaximum(java.util.Calendar.DAY_OF_YEAR);
- d1.add(java.util.Calendar.YEAR, 1);
- } while (d1.get(java.util.Calendar.YEAR) != y2);
- }
- return days;
- }
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
`java.time.Duration.between()`方法返回两个`Instant`对象之间的时间跨度,而`java.time.Period.between()`用于日期之间的间隔。 至于`Java.test`包,它是JUnit测试框架的一部分,通常用于编写单元测试。在源代码...
本文将详细介绍Java中的`java.util.Date`、`java.text.DateFormat`、`java.text.SimpleDateFormat`、`java.util.Calendar`和`java.util.GregorianCalendar`这几个类的用法。 #### 二、Java.util.Date及其格式化 ##...
`java.util.Calendar`是Java中用于操作日期和时间的抽象类,提供了比`Date`类更全面的日期和时间操作能力,包括时区支持、日历字段的访问以及日期的加减运算等。 ##### 使用Calendar `Calendar`类是抽象的,不能...
#### 方法一:使用 `java.util.Date` 和 `java.util.Calendar` ```java public static long getMillis(Date date) { Calendar c = Calendar.getInstance(); c.setTime(date); return c.getTimeInMillis(); } ...
Java提供了多种类和接口来支持这些操作,包括`java.util.Date`、`java.util.Calendar`、`java.text.SimpleDateFormat`以及Java 8引入的`java.time`包中的新API。以下是对这些关键知识点的详细解释: 1. **`java....
在这个程序中,开发者可能使用了`java.util.Calendar`或`java.time.LocalDate`来表示日期。`Calendar`是旧的API,而`LocalDate`属于Java 8引入的新的日期和时间API,后者通常被认为更易于使用且功能更强大。 1. **...
Java的`java.util.Calendar`类是处理日期和时间的基础类,它是所有日历类的抽象基类。以下是一些关于`Calendar`类的关键知识点: 1. **创建实例**:`Calendar`类是抽象的,不能直接实例化,但可以通过`getInstance...
本文将对`java.util.Date`、`java.util.Calendar`以及`java.text.SimpleDateFormat`等类的使用进行详细总结,帮助读者更好地理解和掌握这些核心API。 #### 一、Calendar 的使用 ##### 1. 初始化 Calendar 实例 ``...
3. **`java.util.Calendar`类**: `Calendar`是一个抽象类,提供了日期和时间的计算功能。`Calendar.getInstance()`方法返回一个`Calendar`实例,根据本地环境设置。在代码中,`cal.set(2022, Calendar.DECEMBER, 25)...
在Java编程中,日期处理是常见的任务之一,Java提供了多种方式来操作日期,如`java.util.Date`,`java.util.Calendar`以及`java.text.SimpleDateFormat`等类。以下是对这些类的一些常用函数的总结: 首先,引入`...
Java提供了多种工具类来帮助开发者进行日期时间的操作,其中最常用的是`java.util.Date`、`java.util.Calendar`以及`java.time`包中的类。本篇将重点介绍Java操作日期时间的工具类,特别是通过`DateUtil.java`这个...
此外,`TimeTest.getTwoDay()`方法用于计算两个日期之间的间隔天数,这可以通过将日期转换为毫秒,然后计算两个毫秒值的差再转换回天数来实现。 总之,Java提供了一套完整的日期时间处理机制,通过组合使用`Date`、...
- 使用`java.util.Calendar`类获取当前日期和时间:`Calendar calendar = Calendar.getInstance();` - 使用`java.time`包获取当前日期:`LocalDate today = LocalDate.now();` - 获取当前时间:`LocalTime now = ...
5. **获取当前日期和时间**:提供如 `now()` 或 `currentDate()` 的方法,用于获取系统当前的日期或时间,这可能利用`java.util.Calendar` 或 `java.time.LocalDateTime` 类。 6. **日期间隔计算**:可能会有计算两...
在Java 8之前,我们通常使用`java.util.Date`和`java.util.Calendar`类来处理日期和时间。然而,这些类的设计并不理想,因此在Java 8中引入了新的日期时间API,即`java.time`包,它提供了更强大且易于使用的功能。 ...
在Java中,处理时间的基本类是`java.util.Date`和`java.util.Calendar`,但这两个类自Java 8以后已被新的`java.time`包中的类所取代,如`LocalDate`, `LocalTime`, `LocalDateTime`, `Instant`等。这些新类提供了...
`java.util.Date`类是处理日期和时间的基础,它的构造函数创建一个表示当前时刻的Date对象,而`getTime()`方法返回自1970年以来的毫秒数。 2. **日期格式化**: `java.text.SimpleDateFormat`类用于日期和时间的...
### 七、获取两个日期之间的间隔天数 通过计算两个日期之间的差值来获取天数。 ```java public static String getTwoDay(String sj1, String sj2) { SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-...
程序能够接受用户输入的指定年份和月份,然后输出对应的日历,同时支持计算两个日期之间的间隔天数。 首先,让我们了解一下Java中的`java.util.Calendar`类。这个类是所有日历字段的抽象基类,它提供了一个通用的...
2. **使用`java.util.Calendar`**: ```java Calendar c1 = Calendar.getInstance(); Calendar c2 = Calendar.getInstance(); c1.setTime(df.parse(s1)); c2.setTime(df.parse(s2)); int result = c1....