`

java Calendar bug

 
阅读更多
Calendar cal = Calendar.getInstance();  
cal.set(1999, 12, 29); // Year, Month, Day  
System.out.print(cal.get(Calendar.YEAR) + " ");  
Date d = cal.getTime();  
System.out.println(d.getDay());  

 程序将输出

2000 1

这个就是传说中的千年虫问题?

正确的方法

Calendar cal = Calendar.getInstance(); 
cal.set(1999, Calendar.DECEMBER, 31);  
System.out.print(cal.get(Calendar.YEAR) + " "); 
System.out.println(cal.get(Calendar.DAY_OF_MONTH));

 输出 1999  31

分享到:
评论

相关推荐

    JavaCalendar_JAVA源码_

    JavaCalendar是Java编程语言中用于处理日期和时间的重要类,它是`java.util.Calendar`的实现。这个源码分析将深入探讨Java中日期和时间的管理,以及如何利用`Calendar`类进行相关的操作。 首先,`Calendar`类是抽象...

    简单的java日历小程序,显示每天的时间日期,bug应该没了,因为是小白代码比较乱

    在这个简单的Java项目中,我们主要会涉及到Java的日期时间API,包括`java.util.Calendar`类、`java.time`包中的相关类以及可能的日期格式化。下面我们将详细探讨这些知识点。 首先,`java.util.Calendar`是Java早期...

    java闹钟,自己学习java的练习做

    它可能会用到`java.util.Calendar`类或者`java.time.DayOfWeek`枚举,来判断和设置一周中的特定日子。此外,可能还会有逻辑来实现闹钟的循环功能,比如在每个星期的同一天重复提醒。 3. **WeekSet.java**:这个名字...

    Java中日期格式化YYYY-DD的操作bug

    Java中日期格式化YYYY-DD的操作bug Java中日期格式化YYYY-DD的操作bug是一种常见的错误,它会导致日期格式化不正确,特别是在跨年的时候。这种错误的产生是因为Java中的日期格式化使用了week-based year,即YYYY...

    java 8下载,版本 8u351, solaris各版本

    - **日期和时间API**:通过java.time包,提供了一套全新的日期和时间API,取代了过时的java.util.Date和java.util.Calendar类。 - **类型推断**:编译器能够自动推断变量的类型,使得代码更加简洁。 3. **Solaris...

    Java SE Development Kit 8u192 Windows x64版本

    6. **新的日期与时间API**:`java.time`包替代了过时的`java.util.Date`和`java.util.Calendar`,提供了更强大、更易于使用的日期和时间处理功能。 7. **类型推断**:Java 8的编译器能够更智能地推断变量类型,减少...

    JAVA8API.zip

    3. **日期和时间API**:Java 8用全新的java.time包取代了原有的日期和时间API,如java.util.Date和java.util.Calendar。新的API更加直观易用,提供了LocalDate、LocalTime、LocalDateTime、ZonedDateTime等类,以及...

    Java8 英文文档 API .zip

    - **java.time包**:取代了旧的`java.util.Date`和`java.util.Calendar`,提供了更直观、更易于使用的日期和时间类,如`LocalDate`, `LocalTime`, `LocalDateTime`和`ZonedDateTime`。 3. **Optional类**: - `...

    java-Jdk1.8-windows版

    - **日期与时间API的改进**:新的`java.time`包提供了更加强大和易用的日期和时间API,替代了原来的`java.util.Date`和`java.util.Calendar`。 - **类型推断增强**:Java 8的编译器可以更好地推断泛型实例化时的...

    java swing闹钟小项目.zip

    - 时间的计算通常涉及日期(Date)和日历(Calendar)类,以及LocalDateTime和Duration类(如果使用Java 8及以上版本)。 3. 音乐文件支持: - Java Sound API 提供了播放音频文件的功能。它包括了AudioInputStream类...

    java工具jdk1.80111

    - **日期和时间API的改进**:通过`java.time`包提供了新的日期和时间类,如`LocalDate`, `LocalTime`和`LocalDateTime`,取代了过时的`java.util.Date`和`Calendar`。 - **Optional类**:用于表示可能为null的值,...

    java版本的日历控件,可以选择时间

    在Java编程语言中,日历控件是一种常用的用户界面组件,允许用户直观地选择日期或时间。本控件经过优化和修复,旨在提供一个稳定、无bug的用户体验,让用户能够轻松选择所需的时间点。以下是对这个Java日历控件及其...

    Java语言开发相关单词

    根据提供的文件信息,我们可以整理出一系列与Java编程语言相关的关键词,并对这些关键词进行详细解释,以便更好地理解Java语言的核心概念和技术细节。 ### 公开访问修饰符:`public` `public`是Java中的一个访问...

    java工具类

    2. **日期时间**:`java.util.Date`和`java.util.Calendar`是Java的基础日期时间类,但它们的API设计并不理想。`java.time`包(自Java 8引入)提供了更友好的`LocalDate`、`LocalTime`和`LocalDateTime`等类,而`...

    java软件开发编码规范

    3. **日期处理**:使用标准的日期时间API,如Java 8的`java.time`包,避免直接使用`Date`和`Calendar`。 **第四章 具体要求** 根据交通事业部的具体需求,可能还会有额外的编程要求,如特定的异常处理策略、特定的...

    java-jira java所需的jar包

    7. **Joda-Time**:一个高质量日期和时间库,优于Java自带的Date和Calendar类,提供了更强大的日期和时间处理功能。 8. **Asynchronous Http Client**:可能用于异步HTTP请求,提高性能和响应速度。 9. **Atlassian ...

    jdk1.8.0-101

    此外,新的日期和时间API(java.time包)替代了旧的java.util.Date和java.util.Calendar,提供了更强大且易于使用的日期和时间处理功能。 在JDK 1.8.0_101这个特定版本中,可能包含了自JDK 8发布以来的一些安全修复...

    jdk1.8.0_291.zip

    Java 8通过全新的`java.time`包,提供了更好的日期和时间处理功能,如`LocalDate`,`LocalTime`,`LocalDateTime`,以及`ZonedDateTime`等类,取代了之前不直观且易出错的`java.util.Date`和`Calendar`。 6. **...

    jdk1.8.0_131

    5. **日期和时间API**:Java 8对日期和时间API进行了全面升级,引入了`java.time`包,替代了之前复杂的`java.util.Date`和`java.util.Calendar`。 6. **新的类型接口**:如`Optional<T>`,它是一个容器对象,可能...

    jdk1.8_211 方便大家下载 jdk8

    4. **日期和时间API(java.time)**:Java 8改进了日期和时间的处理,提供了新的java.time包,取代了过时的java.util.Date和java.util.Calendar。新API更加直观且易于使用。 5. **默认方法**:在接口中添加默认方法...

Global site tag (gtag.js) - Google Analytics