java基础知识(Date类,SimpleDateFormat类,Calendar类)

Java第十四天之学到辽~

1.1 Date类
Date的概述
表示特定的瞬间的毫秒值
构造方法
* public Date()
* public Date(long date)   把一个long类型的毫秒值转换成一个日期对象
成员方法
* public long getTime() 	获取一个日期对象对象毫秒值

* public void setTime(long time)
  给一个日期对象设置上指定的毫秒值 例:date.setTime(1000 * 60 * 60) ;
转换
Date ----> long 的转换	
* 调用getTime方法

long ----> Date 的转换
* 可以使用构造方法
* setTime(long time)
1.2 SimpleDateFormat类
SimpleDateFormat的概述
可以把一个日期对象格式化成一个文本(字符串) , 也可以把一个日期字符串解析成一个日期对象
构造方法
* public SimpleDateFormat()
  使用默认的模式来创建一个SimpleDateFormat对象

* public SimpleDateFormat(String pattern)
  使用指定的模式(规则比如yyyy:MM:dd HH:mm:ss)来创建一个SimpleDateFormat对象
  规则:
        y				年
        M				月
        d				天
        H				时
        m				分
        s				秒
        E              星期几
成员方法
* public String format(Date date)
  把一个日期对象格式化成一个字符串
  
* public Date parse(String dateStr)
  把一个日期字符串解析成一个日期对象 注意要以指定格式解析
例子:获取指定的日期 与今天相距多少天
  public class learn1 {
 public static void main(String[] args) throws ParseException {
  
    	 Scanner scanner = new Scanner(System.in);
    	 System.out.println("请输入一个日期,例如2012-02-03");
    	 String s = scanner.nextLine();
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
 	    Date parse = simpleDateFormat.parse(s);
   	  long time1 = parse.getTime();
    	 Date date = new Date();
     		long time = date.getTime();
    		 long aa=time-time1;

      long day=aa/1000/60/60/24;
     System.out.println(day);
 }
}
1.3 Calendar类
Calendar类的概述
Calendar 类是一个抽象类,不能直接new对象,可以通过他的一个静态成员方法getInstance()
来获取他的对象

它为 特定瞬间 与 诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换
提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
成员方法
* public static Calendar getInstance()
  使用默认时区和语言环境获得一个日历对象
 
* public int get(int field)
  获得给定日历字段对应的值 field通过Calendar提供的字段来拿
  
* public void add(int field,int amount)		
  根据日历的规则,为给定的日历字段添加或减去指定的时间量
  
* public final void set(int year,int month,int date)	设置日历时间 年月日
例子
public class MyTest {
    public static void main(String[] args) {
       
        //需求:键盘录入任意一个年份,获取任意一年的二月有多少天
        //分析:
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个年份 例如 2000");
        int year= scanner.nextInt();
        //判断闰年

        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            System.out.println("是闰年");
        }

        //-a:键盘录入一个年份
        //        - b:创建一个Calendar对象
        //        - c:把这个Calendar的时间设置为a中录入的年的3月1号 注意2表示3月
        //-d:向前推算一天
        //        - e:获取月中的天
        //        - f:输出
        Calendar instance = Calendar.getInstance();
        instance.set(year,2,1);
        instance.add(Calendar.DAY_OF_MONTH,-1);
        int i = instance.get(Calendar.DAY_OF_MONTH);
        System.out.println(i);
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值