Java求某一年的某一月的天数_求用JAVA计算某年某月的天数?(两种方法)

/**

*

*/

package com.pp.test;

import java.util.Scanner;

/**

* @author 刘文铭 求用JAVA计算某年某月的天数?

*

*/

public class DayTest {

public static void main(String[] args) {

// 定义年份

int year = -1;

// 定义月份

int month = -1;

// 使用Scanner

Scanner scanner = new Scanner(System.in);

System.out.println("请输入年");

year = scanner.nextInt();

System.out.println("请输入月");

month = scanner.nextInt();

System.out.println(year + "年" + month + "月有" + days(year, month) + "天");

}

public static int days(int year, int month) {

int days = 0;

if (month != 2) {

switch (month) {

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:

days = 31;

break;

case 4:

case 6:

case 9:

case 11:

days = 30;

}

} else {

//闰年

if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)

days = 29;

else

days = 28;

}

return days;

}

}

通常使用的方法

第二种方法

package com.pp.test;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.GregorianCalendar;

import java.util.Locale;

import java.util.Scanner;

/**

* @author 刘文铭

* @des 求用JAVA计算某年某月的天数?

*/

public class DayTest_1 {

public static void main(String[] args) {

// 1.使用Calendar日期函数(声明)

Calendar calendar = new GregorianCalendar();

// 或者用Calendar calendar = Calendar.getInstance();

// 格式化日期--设置date

SimpleDateFormat sdf = new SimpleDateFormat("", Locale.ENGLISH);

sdf.applyPattern("yyyyMM"); // 201203格式

Scanner scanner = new Scanner(System.in);

String date = scanner.next();// 日期格式

try {

System.out.println(sdf.parse(date));

calendar.setTime(sdf.parse(date));

} catch (ParseException e) {

e.printStackTrace();

}

/** 开始用的这个方法获取实际月的最大天数* */

int num2 = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

System.out.println(num2);

// 日期减一,取得上月最后一天时间对象

// cal.add(Calendar.DAY_OF_MONTH, -1);

// 输出上月最后一天日期

// System.out.println(cal.get(Calendar.DAY_OF_MONTH));

}

}

给机一个记录

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值