/**
创新互联建站自2013年创立以来,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元淮安做网站,已为上家服务,为淮安各地企业和个人服务,联系电话:13518219792
* 在一个时间段计算出多少天
* @param beginDate 开始时间
* @param endDate 结束时间
* @param format 格式 如果 yyyy-MM-dd;yyyy
* @return 天数
*/
public static int getDay(String beginDate, String endDate, String format) {
try {
// 日期操作类,设置制定的格式
SimpleDateFormat sim = new SimpleDateFormat(format);
Date d1 = sim.parse(beginDate); // 传入开始时间
Date d2 = sim.parse(endDate); // 传入结束时间
//计算开始时间和结束时间的时间差
int num = (int) ((d2.getTime() - d1.getTime()) / (3600L * 1000 * 24));
if(!format.equals("yyyy")) {
num = num + 1;
}
return num;
} catch (Exception e) {
e.printStackTrace();
return 0;
}
}
public static void main(String[] args) {
System.out.println(getDay("2018", "2020", "yyyy"));
System.out.println(getDay("2018-01-01", "2018-12-31", "yyyy-MM-dd"));
System.out.println(getDay("2019-02-07", "2019-02-11", "yyyy-MM-dd"));
}
年的月的都有,有什么疑问可以问我。
在JAVA中获取当前时间的月份并转换成int型可以采用Calendar类提供的方法进行。
具体代码如下:
Calendar calendar=Calendar.getInstance();
//获得当前时间的月份,月份从0开始所以结果要加1
int month=calendar.get(Calendar.MONTH)+1;
可以使用java.util.Calendar来取得相关日期信息,下面给个示例供参考:
Java代码:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class DateDemo {
static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
public static void main(String[] args) throws ParseException {
String date = "2011-04-25 22:28:30";
System.out.println(date);
System.out.println("年份:" + getYear(date));
System.out.println("月份:" + getMonth(date));
System.out.println("日期:" + getDay(date));
System.out.println("月初日期是: " + getMinMonthDate(date));
System.out.println("月末日期是: " + getMaxMonthDate(date));
}
/**
* 获取日期年份
* @param date
* @return
* @throws ParseException
*/
public static int getYear(String date) throws ParseException{
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateFormat.parse(date));
return calendar.get(Calendar.YEAR);
}
/**
* 获取日期月份
* @param date
* @return
* @throws ParseException
*/
public static int getMonth(String date) throws ParseException{
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateFormat.parse(date));
return (calendar.get(Calendar.MONTH) + 1);
}
/**
* 获取日期号
* @param date
* @return
* @throws ParseException
*/
public static int getDay(String date) throws ParseException{
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateFormat.parse(date));
return calendar.get(Calendar.DAY_OF_MONTH);
}
/**
* 获取月份起始日期
* @param date
* @return
* @throws ParseException
*/
public static String getMinMonthDate(String date) throws ParseException{
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateFormat.parse(date));
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
return dateFormat.format(calendar.getTime());
}
/**
* 获取月份最后日期
* @param date
* @return
* @throws ParseException
*/
public static String getMaxMonthDate(String date) throws ParseException{
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateFormat.parse(date));
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
return dateFormat.format(calendar.getTime());
}
}
错误的不少呢,修改如下:
import javax.swing.JOptionPane;
public class Year {
public static void main(String[] args) {
String yearString = JOptionPane.showInputDialog(null, "请输入您要查找的年份");
String monthString = JOptionPane.showInputDialog(null, "请输入您要查找的月份:");
int daysOfMonth = 0;
int year = Integer.parseInt(yearString);
int month = Integer.parseInt(monthString);
switch (month) {
case 1:
daysOfMonth = 31;
break;
case 2:
if ((year % 4 == 0 year % 100 != 0) || year % 400 == 0) {
daysOfMonth = 29;
} else
daysOfMonth = 28;
break;
case 3:
daysOfMonth = 31;
break;
case 4:
daysOfMonth = 30;
break;
case 5:
daysOfMonth = 31;
break;
case 6:
daysOfMonth = 30;
break;
case 7:
daysOfMonth = 31;
break;
case 8:
daysOfMonth = 31;
break;
case 9:
daysOfMonth = 30;
break;
case 10:
daysOfMonth = 31;
break;
case 11:
daysOfMonth = 30;
break;
case 12:
daysOfMonth = 31;
break;
default:
break;
}
;
JOptionPane.showMessageDialog(null, "这个月份总共的天数是" + daysOfMonth);
System.out.println("您输入的年份是:" + yearString + "\n您输入的月份是:" + monthString + "\n这个月份总共的天数是:" + daysOfMonth);
}
}
java获取一个时间的年月日代码及相关解释说明参考下面代码
package zhidao;
import java.util.Calendar;
public class Test {
public static void main(String[] args) {
Calendar cal=Calendar.getInstance();//使用日历类
int year=cal.get(Calendar.YEAR);//获取年份
int month=cal.get(Calendar.MONTH)+1;//获取月份,因为从0开始的,所以要加1
int day=cal.get(Calendar.DAY_OF_MONTH);//获取天
System.out.println("结果:"+year+"-"+month+"-"+day);
}
}