java 知道月份怎么获取第一天 最后一天

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 知道月份怎么获取第一天 最后一天相关的知识,希望对你有一定的参考价值。

import java.text.SimpleDateFormat;

import java.util.Calendar;

public class Test

/** 

* 获取某月的最后一天 

* @Title:getLastDayOfMonth 

* @Description: 

* @param:@param year 

* @param:@param month 

* @param:@return 

* @return:String 

* @throws 

*/  

public static String getLastDayOfMonth(int year,int month)   

Calendar cal = Calendar.getInstance();  

//设置年份  

cal.set(Calendar.YEAR,year);  

//设置月份  

cal.set(Calendar.MONTH, month-1);  

//获取某月最大天数  

int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);  

//设置日历中月份的最大天数  

cal.set(Calendar.DAY_OF_MONTH, lastDay);  

//格式化日期  

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  

String lastDayOfMonth = sdf.format(cal.getTime());  

return lastDayOfMonth;  

  

/** 

* 获取这个月的最后一天 

* @Title:getLastDayOfCurrentMonth

* @Description: 

* @param:@param year 

* @param:@param month 

* @param:@return 

* @return:String 

* @throws 

*/  

public static String getLastDayOfCurrentMonth()   

Calendar cal = Calendar.getInstance();  

//获取某月最大天数  

int lastDay = cal.getActualMinimum(Calendar.DAY_OF_MONTH);  

//设置日历中月份的最大天数  

cal.set(Calendar.DAY_OF_MONTH, lastDay);  

//格式化日期  

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  

String lastDayOfMonth = sdf.format(cal.getTime());  

return lastDayOfMonth;  

 

/** 

* 获取某月的第一天 

* @Title:getLastDayOfMonth 

* @Description: 

* @param:@param year 

* @param:@param month 

* @param:@return 

* @return:String 

* @throws 

*/  

public static String getFirstDayOfMonth(int year,int month)   

Calendar cal = Calendar.getInstance();  

//设置年份  

cal.set(Calendar.YEAR,year);  

//设置月份  

cal.set(Calendar.MONTH, month-1);  

//获取某月最大天数  

int lastDay = cal.getActualMinimum(Calendar.DAY_OF_MONTH);  

//设置日历中月份的最大天数  

cal.set(Calendar.DAY_OF_MONTH, lastDay);  

//格式化日期  

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  

String lastDayOfMonth = sdf.format(cal.getTime());  

return lastDayOfMonth;  

  

/** 

* 获取这个月的第一天 

* @Title:getFirstDayOfCurrentMonth 

* @Description: 

* @param:@param year 

* @param:@param month 

* @param:@return 

* @return:String 

* @throws 

*/  

public static String getFirstDayOfCurrentMonth()   

Calendar cal = Calendar.getInstance();  

//获取某月最大天数  

int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);  

//设置日历中月份的最大天数  

cal.set(Calendar.DAY_OF_MONTH, lastDay);  

//格式化日期  

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  

String lastDayOfMonth = sdf.format(cal.getTime());  

return lastDayOfMonth;  

  

/** 

* @Title:main 

* @Description: 

* @param:@param args 

* @return: void 

* @throws 

*/  

public static void main(String[] args)   

  

String lastDay = getLastDayOfMonth(2014,2);  

System.out.println("获取2014年2月的最后一天:" + lastDay);  

String currentLDay= getLastDayOfCurrentMonth();  

System.out.println("获取本月的最后一天:" + currentLDay); 

String firstDay = getFirstDayOfMonth(2014,2);  

System.out.println("获取2014年2月的第一天:" + firstDay); 

String currentFDay= getFirstDayOfCurrentMonth();  

System.out.println("获取本月的第一天:" + currentFDay); 

  

传上来的代码真难看,不知道怎么发文件,我给你截一张图

参考技术A 月份的第1天,肯定是1日,,,,最后一天可以用下月1日的前一天取得,,,,,JAVA内部也有方法,和自己处理的结果是一样的。 参考技术B import java.util.Calendar;
import java.util.Date;

public class CalenderTest 

static Calendar calendar = null;

public static void main(String[] args) 
calendar = Calendar.getInstance();
System.out.println(FirstDay(2));
System.out.println(LastDay(2));


public static Date FirstDay(int month) 
        calendar.set(Calendar.MONTH, month-1);
        int maxday =calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
        calendar.set(Calendar.DAY_OF_MONTH, maxday);
return calendar.getTime();



public static Date LastDay(int month) 

  calendar.set(Calendar.MONTH, month-1);
        int minday =calendar.getActualMinimum(Calendar.DAY_OF_MONTH);
        calendar.set(Calendar.DAY_OF_MONTH, minday);
return calendar.getTime();


 


//

Mon Feb 29 11:20:38 CST 2016

Mon Feb 01 11:20:38 CST 2016

关于java中如何获取当前年份的第一天和最后一天

package com.dada.test;


import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * @author li_yueling
 * @version 1.0 2011-03-25
 *
 */
public class DateUtil 
/**
 * 默认日期格式
 */
public static String DEFAULT_FORMAT = "yyyy-MM-dd";

/**
 * 测试主方法
 * @param args
 */
public static void main(String[] args) 
for(int i = 1951;i < 1960;i++)
System.out.println(formatDate(getYearFirst(i)));
System.out.println(formatDate(getYearLast(i)));


System.out.println(formatDate(getCurrYearFirst()));
System.out.println(formatDate(getCurrYearLast()));



/**
 * 格式化日期
 * @param date 日期对象
 * @return String 日期字符串
 */
public static String formatDate(Date date)
SimpleDateFormat f = new SimpleDateFormat(DEFAULT_FORMAT);
String sDate = f.format(date);
return sDate;


/**
 * 获取当年的第一天
 * @param year
 * @return
 */
public static Date getCurrYearFirst()
Calendar currCal=Calendar.getInstance();  
int currentYear = currCal.get(Calendar.YEAR);
return getYearFirst(currentYear);


/**
 * 获取当年的最后一天
 * @param year
 * @return
 */
public static Date getCurrYearLast()
Calendar currCal=Calendar.getInstance();  
int currentYear = currCal.get(Calendar.YEAR);
return getYearLast(currentYear);


/**
 * 获取某年第一天日期
 * @param year 年份
 * @return Date
 */
public static Date getYearFirst(int year)
Calendar calendar = Calendar.getInstance();
calendar.clear();
calendar.set(Calendar.YEAR, year);
Date currYearFirst = calendar.getTime();
return currYearFirst;


/**
 * 获取某年最后一天日期
 * @param year 年份
 * @return Date
 */
public static Date getYearLast(int year)
Calendar calendar = Calendar.getInstance();
calendar.clear();
calendar.set(Calendar.YEAR, year);
calendar.roll(Calendar.DAY_OF_YEAR, -1);
Date currYearLast = calendar.getTime();

return currYearLast;


参考技术A 您好,很高兴能帮助您,
Calendar cal = Calendar.getInstance();
// 不加下面2行,就是取当前时间前一个月的第一天及最后一天
cal.set(Calendar.YEAR,2012)
cal.set(Calendar.MONTH, 6);
cal.set(Calendar.DAY_OF_MONTH, 1);
cal.add(Calendar.DAY_OF_MONTH, -1);
Date lastDate = cal.getTime();

cal.set(Calendar.DAY_OF_MONTH, 1);
Date firstDate = cal.getTime();
你的采纳是我前进的动力,还有不懂的地方,请你继续“追问”!
如你还有别的问题,可另外向我求助;答题不易,互相理解,互相帮助!
参考技术B java中如何获取当前年份的第一天和最后一天?
表中有一个时间字段submitDate,表中有好几年的记录,我想要查出表中当前年份的记录,要怎么处理?

一种是使用模糊查询,like
一种是between 那就要获得当前年份的第一天和最后一天.本回答被提问者和网友采纳
参考技术C 第一天不就是1月1日,最后一天不就是12月31日么,再加上年份在前面不就好了

以上是关于java 知道月份怎么获取第一天 最后一天的主要内容,如果未能解决你的问题,请参考以下文章

用SQL获取某个某年某个月份的最后一天的日期

java中如何获取当前月最后一天

求java代码获取上个月最后一天最后一秒的时间

java获取每个月最后一天的日期

SQL语句 如何取得指定月份的最后一天的日期

关于java中如何获取当前年份的第一天和最后一天