JAVA及其常用类方法(七)---Calendar

Calendar类:

Calendar日历类,Calendar类是一个抽象类
它为特定瞬间与一组诸如YEAR、MONTH、DAY_OF_MONTH等日历字段间的转换提供了一些方法
瞬间指定的是一个毫秒值
1.  由于Calendar是抽象类,通过这个方法进行实例化,抽象类多态
public static Calendar getInstance();
public static final int YEAR:年份
public int get (int fied)返回给定日历字段的值
public static final int DATE:月份中的某天



2. 和日历相关的添加方法
    public abstract void add(int field,int amount)
//根据日历的规则,为给定的日历字段添加或减去指定的时间量
public void set(int field,int value)将给定的日历字段设置为指定值

代码
import java.util.Calendar;


public class calendarTest1 {
public static void main(String[] args) {
//创建日历对象,抽象类多态
Calendar c=Calendar.getInstance();//java.lang.Object //继承者 java.util.Calendar需要导包
//获取年份,使用日历对象调用成员方法get();
int year=c.get(Calendar.YEAR);
//获取月份,年中的月份,从0 开始取,0——11
int month=c.get(Calendar.MONTH);
//月份中的天
int date=c.get(Calendar.DATE);
System.out.println(year+"年"+(month+1)+"月"+date+"日");
//在控制台输出:3年前的今天

//获取年
c.add(Calendar.YEAR, -3) ;
int year1 = c.get(Calendar.YEAR) ;
int month1 = c.get(Calendar.MONTH) ;
int date1= c.get(Calendar.DATE);
System.out.println(year1+"年"+(month1+1)+"月"+date1+"日");

//5年后的10天前
c.add(Calendar.YEAR, 5) ;
c.add(Calendar.DATE, -10);
int year2 = c.get(Calendar.YEAR);
int month2 = c.get(Calendar.MONTH) ;
int date2 = c.get(Calendar.DATE) ;

System.out.println(year2+"年"+(month2+1)+"月"+date2+"日");

c.set(Calendar.YEAR, 2018) ;
c.set(Calendar.MONTH, 7) ;
c.set(Calendar.DATE, 17) ;

int year3 = c.get(Calendar.YEAR) ;
int month3 = c.get(Calendar.MONTH) ;
int date3 = c.get(Calendar.DATE) ;
System.out.println(year3+"年"+(month3+1)+"月"+date3+"日");

}
}

例子:获取任意一年的二月有多少天:
代码:
import java.util.Calendar;
import java.util.Scanner;


/*
 *  获取任意一年的二月有多少天
 * 使用键盘录入改进
 * 分析:1)键盘录入一个任意一个年份
 * 2)创建日历对象
 * 3)使用set设置日历:
 * 年份就是我们录入的年份,
 * 使用日历对象设置年份,月份,日期set(year,2,1):也就是3月1日
 * 4)使用add添加方法往前推一天
 * 5)输出这一天即可
 */
public class CalendarTest2 {
public static void main(String[] args) {
//创建键盘录入对象
Scanner sc=new Scanner(System.in);
//接收并录入数据
System.out.println("请您任意输入一个年份");
int yyyy=sc.nextInt();
//创建日历对象
Calendar c=Calendar.getInstance();
//去给日历对象设置日历时间
c.set(yyyy,2,1);
//往前推一天
c.add(Calendar.DATE,-1);
System.out.println(c.get(Calendar.DATE));

}


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值