「java月数」java月份

博主:adminadmin 2023-01-01 12:42:07 962

本篇文章给大家谈谈java月数,以及java月份对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java怎么计算出某年某月到某年某月之间的总月数并显示出来

天数好算,月数不好算,因为有28天,30天,31天,偶尔还有29天一个月的,告诉你怎么算天数吧

public static java.util.Date toDate(String dateStr) {

Date d=null;

SimpleDateFormat formater=new SimpleDateFormat("yyyy/MM/dd");

try {

formater.setLenient(false);

d=formater.parse(dateStr);

} catch(Exception e) {

d=null;

}

return d;

}

public static long dayDiff(Date date1, Date date2) {

return (date2.getTime() - date1.getTime()) / 86400000;

}

public static void main(String[] args) {

System.out.println("请输开始日期如:2013/03/15");

Scanner sc=new Scanner(System.in);

String dateStr1=sc.nextLine();

Date date1=toDate(dateStr1);

System.out.println("请输结束日期如:2013/03/15");

String dateStr2=sc.nextLine();

Date date2=toDate(dateStr2);

Long day=dayDiff(date1,date2);

System.out.println("相差"+day+"天");

}

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

给你2个方案:

方案1:

1、最简单的,就是定义一个数组,数组中[31,28,31,30.....]

2、然后取第几个月,直接通过月份的数字减去1做为下标来取上面的数组的数据就可以

3、2月份是特殊,所以如果取到2月份,加一个闰年判断

方案2:直接给你上代码吧,通过下面两个方法,你可以取到一个月的最后一天了,再把这天的日期格式化取最后2个数字出来,就是天数了

/**

* 得到当前月的最后一天

*

* @return

*/

public static Date getLastDayOfMonth(Date date) {

Calendar c = new GregorianCalendar();

c.setTime(date);

c.set(Calendar.DAY_OF_MONTH, c.getActualMaximum(Calendar.DAY_OF_MONTH));

return toDate(c.getTime(),"yyyy-MM-dd");

}

/**

* add by chenxiaoping

*

* @字符串转日期

* @param strDate

* 字符串的日期

* @return Date 日期

*/

public static Date toDate(Date date, String strFormat) {

Date retDate = null;

SimpleDateFormat sdf = new SimpleDateFormat(strFormat);

try {

String str = sdf.format(date);

retDate = sdf.parse(str);

} catch (ParseException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return retDate;

}

java 计算一个月有多少天和多少周

import java.util.Calendar;

/**

* 功能概述:计算指定年月的天数和周数br

* 创建时间:2010-5-17 下午05:25:58br

*

*/

public class Test{

public static void main(String[] args) {

Calendar c = Calendar.getInstance();

c.set(Calendar.YEAR, 2010); // 2010年

c.set(Calendar.MONTH, 5); // 6 月

System.out.println("------------" + c.get(Calendar.YEAR) + "年" + (c.get(Calendar.MONTH) + 1) + "月的天数和周数-------------");

System.out.println("天数:" + c.getActualMaximum(Calendar.DAY_OF_MONTH));

System.out.println("周数:" + c.getActualMaximum(Calendar.WEEK_OF_MONTH));

}

}

java怎么计算出 某年某月 到 某年某月之间的总月数并显示出来

//思路 (不考虑开发语言的因素)

// 月份只差其实就是,年份只差 乘以12 然后再加上 月份只差, 比如 2009-09 ----2012-02

// 这个就应该 (2012-2009 )*12 + (2-9)=36 +(-7)=29

//思路有了直接使用java套就可以了

public static void main(String[] args) throws ParseException {

//字符串格式化

DateFormat df = new SimpleDateFormat("yyyy-MM");

//字符串装换为Calendar

Calendar c= Calendar.getInstance();

c.setTime(df.parse("2009-01"));

//字符串装换为Calendar

Calendar d= Calendar.getInstance();

d.setTime(df.parse("2012-01"));

//计算年份只差 乘以12 然后加上月份之差

int m=(d.get(Calendar.YEAR)-c.get(Calendar.YEAR))*12+d.get(Calendar.MONTH)-c.get(Calendar.MONTH);

System.out.println(m);

}

//建议楼主多看看api,现在网上有很多西方下载就不给你连接了。

Java里,如何得到一个月有多少天

按照你的要求,如何得到一个月有多少天,这里并没有说是什么年份,所以默认当年(不同年份的月份天数可能不一样,例如闰年的二月)

因此问题变为

输入条件:指定某一个月

输出结果:当年这个月份的天数

思路:在Java8里新的时间API里,月份已经被抽象成了枚举Month,所以可以把输入条件定义为枚举类型的Month,然后获取当前时间X,把时间X的月份修改为输入条件的月份,此时时间X变为X1,根据本身提供的方法lengthOfMonth就可以直接得到X1所在当月的天数了

代码:(请将JDK升到8)

public static void main(String[] args) {

    System.out.println(countDaysInMonth(Month.MAY));

}

public static int countDaysInMonth(Month month){

    // 获取当前时间

    LocalDate now = LocalDate.now();

    System.out.println(now);

    // 把当前时间的月份修改为输入的月份

    LocalDate thisMonthDate = now.withMonth(month.getValue());

    System.out.println(thisMonthDate);

    return thisMonthDate.lengthOfMonth();

}

也可以连着写,更美观点

public static int countDaysInMonth(Month month){

    return LocalDate.now()

                    .withMonth(month.getValue())

                    .lengthOfMonth();

}

非常直观且易懂好用,在Java8里with就代表着修改意思,withMonth那就是修改月份,所以整个代码读下来就变成

获取当前时间A

修改A的月份为输入条件得到时间B

计算B所在月的天数

关于java月数和java月份的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。