首页系统javacalendar,java语言中的date类及方法的用法

javacalendar,java语言中的date类及方法的用法

编程之家2024-06-07117次浏览

一、java语言中的date类及方法的用法

一、Date类型的初始化

javacalendar,java语言中的date类及方法的用法

1、Date(intyear,intmonth,intdate);直接写入年份是得不到正确的结果的。因为java中Date是从1900年开始算的,所以前面的第一个参数只要填入从1900年后过了多少年就是你想要得到的年份。月需要减1,日可以直接插入。这种方法用的比较少,常用的是第二种方法。

2、这种方法是将一个符合特定格式,比如yyyy-MM-dd,的字符串转化成为Date类型的数据。首先,定义一个Date类型的对象Datedate=null;再定义一个String类型的符合格式的字符串StringdateStr="2010-9-10";把这个字符串进行拆分String[]dateDivide=dateStr.split("-");把年月日分别取出,赋给Calendar,用Calendar的getTime();取得日期再赋给date。

importjava.util.Calendar;

importjava.util.Date;

publicclassMain4{

/**

javacalendar,java语言中的date类及方法的用法

*@paramargs

*/

publicstaticvoidmain(String[]args){

Datedate=null;

StringdateStr="2010-9-10";

String[]dateDivide=dateStr.split("-");

javacalendar,java语言中的date类及方法的用法

if(dateDivide.length==3){

intyear=Integer.parseInt(dateDivide[0].trim());//去掉空格

intmonth=Integer.parseInt(dateDivide[1].trim());

intday=Integer.parseInt(dateDivide[2].trim());

Calendarc=Calendar.getInstance();//获取一个日历实例

c.set(year,month-1,day);//设定日历的日期

date=c.getTime();

}

System.out.println(date);

}

}

二、Date类型的比较

Datea;

Dateb;

假设现在你已经实例化了a和b

a.after(b)返回一个boolean,如果a的时间在b之后(不包括等于)返回true

b.before(a)返回一个boolean,如果b的时间在a之前(不包括等于)返回true

a.equals(b)返回一个boolean,如果a的时间和b相等返回true

importjava.text.SimpleDateFormat;

importjava.util.Calendar;

importjava.util.Date;

publicclassMain4{

/**

*@paramargs

*/

publicstaticvoidmain(String[]args){

//Datedate=null;

//StringdateStr="2010-9-10";

//String[]dateDivide=dateStr.split("-");

//if(dateDivide.length==3){

//intyear=Integer.parseInt(dateDivide[0].trim());//去掉空格

//intmonth=Integer.parseInt(dateDivide[1].trim());

//intday=Integer.parseInt(dateDivide[2].trim());

//Calendarc=Calendar.getInstance();//获取一个日历实例

//c.set(year,month-1,day);//设定日历的日期

//date=c.getTime();

//}

//System.out.println(date);

//Date类型常用的操作函数

//1.-----计算某一个月份的最大天数

Calendarcalendar=Calendar.getInstance();

//使用set方法之前必须先clear一下,否则很多信息会继承自系统当前时间

//calendar.clear();

//calendar.set(Calendar.YEAR,2018);

//calendar.set(Calendar.MONTH,3-1);

//intday=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

//2.------Calendar和Date的转化

//-----Calendar转化为Date--

Datedate=calendar.getTime();

System.out.println(date);//SatMar2411:39:55CST2018

//-----Date转化为Calendar--

Datedate1=newDate();

Calendarcalendar1=Calendar.getInstance();

calendar1.setTime(date1);

//3.----计算一年中的第几星期是几号

SimpleDateFormatdf=newSimpleDateFormat();

Calendarcalen=Calendar.getInstance();

calen.set(Calendar.YEAR,2018);

calen.set(Calendar.WEEK_OF_YEAR,4);

calen.set(Calendar.DAY_OF_WEEK,4);

System.out.println(df.format(calen.getTime()));

//add方法

SimpleDateFormatdff=newSimpleDateFormat("yyyy-MM-dd");

Calendarcalll=Calendar.getInstance();

calll.set(Calendar.YEAR,2018);

calll.set(Calendar.MONTH,4);

calll.set(Calendar.DAY_OF_MONTH,24);

calll.add(Calendar.DATE,-4);

Datedateee=calll.getTime();

System.out.println(dff.format(dateee));

calll.add(Calendar.DAY_OF_MONTH,-4);

//calll.add(Calendar.DATE,-4);相等

Datedatee1=calll.getTime();

System.out.println(dff.format(datee1));

}

}

二、java程序中计算日历中的day-1是什么意思

Calendar.get(Calendar.DAY_OF_WEEK)-1如果没记错sunday是0周一是1get(Calendar.DAY_OF_WEEK)对应的是1-7月份是从0开始的set(month,month-1,1);第一个应该是year第二个月第三个日

三、localdate和date的区别

localdate表示本地日期,是一个不含有时区信息的日期类,可以表示例如"2021-08-01"这样的日期。而date表示日期和时间,是一个包含有时区信息的日期类,可以表示例如"2021-08-0112:00:00"这样的日期和时间。

cs去鼠标加速(CS如何去鼠标加速)联通版iphone5(中国联通iphone5值得购买吗)