一个简单问题,Java里,如何得到一个月有多少天???

输入月如   2002-07,  
  怎么知道该月有多少天????   
 
Calendar   cal    =    Calendar.getInstance();   
  cal.set(Calendar.YEAR,
2002 );   
  cal.set(Calendar.MONTH,
6 ); // 7月   
   int    maxDate    =    cal.getActualMaximum(Calendar.DATE);

 

  哈哈,今天我在开发一个项目 知道了年月,像求这个月最大天数,经过在网上搜索,终于发现了

java.util
类 Calendar

java.lang.Object
  继承者 java.util.Calendar

set

public void set(int field,
                int value)
将给定的日历字段设置为给定值。不管处于何种宽松性模式下,该值都不由此方法进行解释。

 

参数:
field - 给定的日历字段。
value - 给定日历字段所要设置的值。

getActualMaximum

public int getActualMaximum(int field)
给定此 Calendar 的时间值,返回指定日历字段可能拥有的最大值。例如,在某些年份中, MONTH 字段的实际最大值是 12,而在希伯来日历系统的其他年份中,该字段的实际最大值是 13。

此方法的默认实现使用了一个迭代算法来确定日历字段的实际最大值。如果有可能的话,子类应该使用一个更有效的实现来重写此方法。

 

参数:
field - 日历字段
返回:
对于此 Calendar 的时间值而言,给定日历字段的最大值

另外 还发现了一个  判断闰年的方法

java.util
类 GregorianCalendar

java.lang.Object
  继承者 java.util.Calendar
      继承者 java.util.GregorianCalendar

isLeapYear

public boolean isLeapYear(int year)
确定给定的年份是否为闰年。如果给定的年份是闰年,则返回 true。要指定 BC 年份,必须给定 1 - 年份。例如,指定 -3 为 BC 4 年。

 

参数:
year - 给定的年份。
返回:
如果给定的年份为闰年,则返回 true;否则返回 false
 
 

闰年来历:

    关于公历闰年是这样规定的:地球绕太阳公转一周叫做一回归年,一回归年长365日5时48分46秒。因此,公历规定有平年和闰年,平年一年有365日,比回归年短0.2422日,四年共短0.9688日,故每四年增加一日,这一年有366日,就是闰年。但四年增加一日比四个回归年又多0.0312日,400年后将多3.12日,故在400年中少设3个闰年,也就是在400年中只设97个闰年,这样公历年的平均长度与回归年就相近似了。由此规定:年份是整百数的必须是400的倍数才是闰年,例如1900年、2100年就不是闰年。

 闰年算法约束简介:

1〉年份能被400整除

2〉年份能被4整除但不能被100整除

1/3/5/7/8/10/12月都是31天,
4,6,9,11都是30天。
2月闰年为29天,否则为28天。   
闰年的判断:该年份能够被4整除,并且不能被100整除的年份则视为闰年。
闰年的计算方法还有个例外,即当年份能够被400整除时,也将其视为闰年。
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
Java中读取JSON文件中的数据通常可以使用第三方库,比如Gson、Jackson等。这以使用Gson库为例,介绍如何读取JSON文件中的数据。 1. 导入Gson库 首先需要在项目中导入Gson库。可以在pom.xml文件中添加如下依赖: ```xml <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.7</version> </dependency> ``` 2. 读取JSON文件 假设有一个名为data.json的JSON文件,内容如下: ```json { "name": "Alice", "age": 20, "gender": "female" } ``` 可以使用以下代码读取该文件中的数据: ```java import com.google.gson.Gson; import java.io.FileReader; import java.io.IOException; public class ReadJsonFile { public static void main(String[] args) { Gson gson = new Gson(); try (FileReader reader = new FileReader("data.json")) { // 读取文件内容到一个字符串中 StringBuilder builder = new StringBuilder(); int c = reader.read(); while (c != -1) { builder.append((char) c); c = reader.read(); } String json = builder.toString(); // 解析JSON字符串 Data data = gson.fromJson(json, Data.class); System.out.println(data.getName()); System.out.println(data.getAge()); System.out.println(data.getGender()); } catch (IOException e) { e.printStackTrace(); } } static class Data { private String name; private int age; private String gender; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } } } ``` 在上面的代码中,首先使用`FileReader`读取JSON文件中的内容到一个字符串中,然后通过`Gson`的`fromJson`方法将JSON字符串解析成Java对象。在本例中,我们定义了一个`Data`类来表示JSON文件中的数据,然后通过`fromJson`方法将JSON字符串解析成`Data`对象。最后输出`Data`对象的内容。 以上就是使用Java读取JSON文件中的数据的简单示例。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值