javacalendarJava中日历类(CalendarClass)的用途?
javacalendar 时间:2021-06-26 阅读:(
)
java如何通过calendar类获取当前系统日期
Calendar ca = Calendar.getInstance(); int year = ca.get(Calendar.YEAR);//获取年份 int month=ca.get(Calendar.MONTH);//获取月份 int day=ca.get(Calendar.DATE);//获取日 int minute=ca.get(Calendar.MINUTE);//分 int hour=ca.get(Calendar.HOUR);//小时 int second=ca.get(Calendar.SECOND);//秒 int WeekOfYear = ca.get(Calendar.DAY_OF_WEEK);java中的Calendar如何使用的?
package pack.java.calendar.demo;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class CalendarDemo {
private static SimpleDateFormat date_format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
public static void main(String[] args) {
//获取calendar实例;
Calendar calendar = Calendar.getInstance();
//判断calendar是不是GregorianCalendar类的实例;
if(calendar instanceof GregorianCalendar){
System.out.println("属于GregorianCalendar类的实例!");
}
//从calendar对象中获得date对象,当前时间;
Date dates = calendar.getTime();
//格式化时间;
String date_str= date_format.format(dates);
System.out.println(date_str);
//设置月份05;代表日历的月份6月,因为月份从0开始。
calendar.set(Calendar.MONTH, 05);
int months = calendar.get(Calendar.MONTH);
System.out.println(months); //输出05;
//设置日期为2011-07-24 09:59:50
calendar.set(2011, 06, 24, 9, 59, 50);
String getDate = date_format.format(calendar.getTime());
System.out.println(getDate); //输出2011-07-24 09:59:50;
//比较日前大小;
if(new Date().getTime() > calendar.getTimeInMillis()){
System.out.println("当前日期在后!");
}else{
System.out.println("当前日期在前!");
}
//设置当前时间为:2011-07-24 11:06:00
calendar.setTime(new Date());
int year = calendar.get(Calendar.YEAR); //获取年;
int month = calendar.get(Calendar.MONTH); //获取月;
int date = calendar.get(Calendar.DATE); //获取天;
int hour = calendar.get(Calendar.HOUR); //获取小时;
int minute = calendar.get(Calendar.MINUTE); //获取分钟;
int second = calendar.get(Calendar.SECOND); //获取秒钟;
int hour_of_day = calendar.get(Calendar.HOUR_OF_DAY); //第几个小时,
int day_of_month = calendar.get(Calendar.DAY_OF_MONTH); //这天,在一个月内是第几天.
int day_of_week = calendar.get(Calendar.DAY_OF_WEEK); //这天,在一周内,是第几天.
int day_of_year = calendar.get(Calendar.DAY_OF_YEAR); //这天,在一年内,是第几天。
int week_of_year = calendar.get(Calendar.WEEK_OF_YEAR); //这周,在一年内是第几周;
int week_of_month = calendar.get(Calendar.WEEK_OF_MONTH);//这周,在这个月是第几周;以以星为标准;
int zone_offset = calendar.get(Calendar.ZONE_OFFSET); //获取时区;
int day_of_week_in_month = calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH); //某月中第几周,按这个月1号算,1号起就是第1周,8号起就是第2周。
以月份天数为标准
int r = calendar.get(Calendar.AM_PM);
if(r==calendar.AM){
System.out.println("现在是上午");
}
if(r==calendar.PM){
System.out.println("现在是下午");
}
System.out.println("==================================================");
System.out.println(year);
System.out.println(month);
System.out.println(date);
System.out.println(hour);
System.out.println(minute);
System.out.println(second);
System.out.println(hour_of_day);
System.out.println(day_of_month);
System.out.println(day_of_week);
System.out.println(day_of_year);
System.out.println(week_of_year);
System.out.println(week_of_month);
System.out.println(zone_offset);
System.out.println(day_of_week_in_month);
}
}如何用JAVA编写出一个简单的日历
import javax.swing.JOptionPane;
public class NewClass{
public static void main(String[] args){
int year,month;
Calender cal=new Calender(2008,10);
cal.showCalender();
year=Integer.parseInt(JOptionPane.showInputDialog("Year:"));
month=Integer.parseInt(JOptionPane.showInputDialog("Month:"));
cal.setYear(year);
cal.setMonth(month);
cal.showCalender();
}
}
class Calender{
private int year,month;
public Calender(){
year=0;
month=1;
}
public Calender(int year){
this.year=year;
month=1;
}
public Calender(int year,int month){
this.year=year;
if(month>12)
this.month=month%12;
else
this.month=month;
}
public void setYear(int year){
this.year=year;
}
public void setMonth(int month){
if(month>12)
this.month=month%12;
else
this.month=month;
}
private int dayOfMonth(){
int days=0;
switch(month){
case 1:days=31;break;
case 2:{
if(((year%4==0)&&(year%100!=0))||(year%400==0))
days=29;
else
days=28;
break;
}
case 3:days=31;break;
case 4:days=30;break;
case 5:days=31;break;
case 6:days=30;break;
case 7:days=31;break;
case 8:days=31;break;
case 9:days=30;break;
case 10:days=31;break;
case 11:days=30;break;
case 12:days=31;break;
default:
days=0;
}
return days;
}
private int dayOfWeek(){
int Y=year;
int M=month;
int D=1;
int A;
A = Y>0?(5+(Y+1)+(Y-1)/4-(Y-1)/100+(Y-1)/400)%7:(5+Y+Y/4-Y/100+Y/400)%7;
A = M>2?(A+2*(M+1)+3*(M+1)/5)%7:(A+2*(M+2)+3*(M+2)/5)%7;
if (((Y%4 == 0 && Y%100 != 0)|| Y%400 == 0) && M>2) A =(A+1)%7;
A=(A+D)%7;
return A;
}
public void showCalender(){
String str=new String();
str=" ";
str+=year+"年"+month+"月";
str+="
";
str+="日 一 二 三 四 五 六
";
int week=this.dayOfWeek();
for(int i=0,j=1;i<7;i++){
if(i<week)
str+=" ";
else{
str+=" "+j+" ";
j++;
}
}
str+="
";
end:
for(int i=7-week+1;i<=this.dayOfMonth();){
for(int j=0;j<7;j++){
if(i<10)
str+=" "+i+" ";
else
str+=i+" ";
i++;
if(i>this.dayOfMonth())
break end;
}
str+="
";
}
JOptionPane.showMessageDialog(null,str);
}
}
用一个类来实现Java中日历类(CalendarClass)的用途?
Java中日历类(Calendar类)的用途如下:
????Calendar类的静态方法getInstance()可以初始化一个日历对象:Calendar now = ????????Calendar.getInstance(); ? ?
????可以使用下面三个方法把日历定到任何一个时间:
?????set(int?year?,int?month,int?date)??;
?????set(int?year?,int?month,int?date,int?hour,int?minute)?;
?????set(int?year?,int?month,int?date,int?hour,int?minute,int?second)?;????如果想获得年份、月份、小时等信息可以使用: ?
??????Now.get(Calendar.Month);//这样的方法?0表示一月,1表示二月??
?????get(Calendar.DAY_OF_MONTH);//获得这个月的第几天
?????get(Calendar.DAY_OF_WEEK);//获得这个星期的第几天?
?????get(Calendar.DAY_OF_YEAR);//获得这个年的第几天??
???????getTimeMillis();//获得当前时间的毫秒表示
????1.计算某一月份的最大天数
????Calendar?time=Calendar.getInstance();?
????time.clear();?
????time.set(Calendar.YEAR,year);?
????time.set(Calendar.MONTH,i-1);//注意,Calendar对象默认一月为0?????????????
????int?day=time.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天数
????注:在使用set方法之前,必须先clear一下,否则很多信息会继承自系统当前时间
????2.Calendar和Date的转化
????(1) Calendar转化为Date
????Calendar?cal=Calendar.getInstance();
????Date?date=cal.getTime();
????(2) Date转化为Calendar
????Date?date=new?Date();
????Calendar?cal=Calendar.getInstance();
????cal.setTime(date);
????3.格式化输出日期时间
????Date?date=new?Date();
????SimpleDateFormat?df=new?SimpleDateFormat("yyyy-MM-dd?hh:mm:ss");
????System.out.println(df.format(date));
????4.计算相隔天数的方法
????public?int?getDaysBetween?(Calendar?d1,?Calendar?d2){
??????if?(d1.after(d2)){??//?swap?dates?so?that?d1?is?start?and?d2?is?end
???????????java.util.Calendar?swap?=?d1;
???????????d1?=?d2;
???????????d2?=?swap;
??????}
??????int?days?=?d2.get(Calendar.DAY_OF_YEAR)?-?d1.get(Calendar.DAY_OF_YEAR);
??????int?y2?=?d2.get(Calendar.YEAR);
?????if?(d1.get(Calendar.YEAR)?!=?y2){
???????????d1?=?(Calendar)?d1.clone();
???????????do{
?????????????days?+=?d1.getActualMaximum(Calendar.DAY_OF_YEAR);//得到当年的实际天数
???????????????d1.add(Calendar.YEAR,?1);
??????????}?while?(d1.get(Calendar.YEAR)?!=?y2);
??????}
???????return?days;
????}
博鳌云是一家以海外互联网基础业务为主的高新技术企业,运营全球高品质数据中心业务。自2008年开始为用户提供服务,距今11年,在国人商家中来说非常老牌。致力于为中国用户提供域名注册(国外接口)、免费虚拟主机、香港虚拟主机、VPS云主机和香港、台湾、马来西亚等地服务器租用服务,各类网络应用解決方案等领域的专业网络数据服务。商家支持支付宝、微信、银行转账等付款方式。目前香港有一款特价独立服务器正在促销,...
无忧云怎么样?无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点,目前商家开启了夏日清凉补贴活动,商家的机器还是非常...
今天遇到一个网友,他在一个服务器中搭建有十几个网站,但是他之前都是采集站点数据很大,但是现在他删除数据之后希望设置可能有索引的文章给予404跳转页面。虽然他程序有默认的404页面,但是达不到他引流的目的,他希望设置统一的404页面。实际上设置还是很简单的,我们找到他是Nginx还是Apache,直接在引擎配置文件中设置即可。这里有看到他采用的是宝塔面板,直接在他的Nginx中设置。这里我们找到当前...
javacalendar为你推荐
sql四舍五入sql中round(),floor(),ceiling()函数的用法和区别分别是什么?时间刻度机械手表的时分针时间刻度都对不准吗?离线包离线地图,离线导航包有什么区别中国学生网如何在中国高等教育学生信息网填学生信息excel大写金额在Excel中如何输入数字直接显示大写金额?avc是什么格式格式工厂转的[AS3 720 AVC]mp4是什么格式国家法规数据库食品及食用农产品标准法规信息支撑和综合应用平台/食品安全标准与技术法规动态比对数据库如何查询标准手机软件开发工具手机app一般用什么 软件开发防火墙技术应用防火墙的应用与研究论文泛微协同办公系统泛微oa怎么样?我想了解一下,有用过的同仁帮忙!发表下自己的观点(天津)
西安服务器租用 申请免费域名 香港机房 表单样式 174.127.195.202 双11抢红包攻略 一点优惠网 debian7 hostloc 泉州移动 域名dns 四川电信商城 海外空间 shuang12 游戏服务器出租 xuni 免费php空间 登陆qq空间 国外网页代理 网站防护 更多