java 从零开始,学习笔记之基础入门(十七)

时间:2022-03-11 19:43:38

Date类_Calendar类

Java.util.Date类

是一个封装类,如果创建一个此封装类的对象可以取到系统时间,取到的系统时间是一个Long型的数据。此long型的数据是从标准的格林尼标准时间距离系统时间的一个毫秒差

创建一个Date类的对象和普通的类创建对象是一样的

Date date = new Date();

 

package com.ibm.utildate;

 

import java.util.Date;

 

public class DateDemo {

    public staticvoid main(String[] args) {

       //Date对象的创建

       Date date = new Date();

       System.out.println(date);

       Date date1 = newDate(112,8,8);

       System.out.println(date1);

      

       //afterbefore

      

       Date date3 = newDate(114,9,9);

       boolean flag=date.after(date3);

       System.out.println(flag);

      

       //取到系统时间返回一个毫秒数

       long l=date.getTime();

       System.out.println(l);

       //1970距离现在有多少天?

       long l1=l/1000/60/60/24;

       System.out.println(l1);

      

      

       //java.sql.Date java.sql.Time  java.sql.Timeatamp都是java.util.Date类的子类

       //java.util.Datejava.sql.Date相互转换

       java.util.Date sd = new java.sql.Date(11);

       java.util.Date ud = sd;

       //如果要将java.util.Date转换成java.sql.Date则先要将java.sql.Date转换成java.util.Date

       //,就是子类和父类之间的相互转换的规律

    }

 

}

 

 

 

求你出生了多少天?

package com.ibm.utildate;

 

import java.util.Calendar;

import java.util.GregorianCalendar;

 

public class GetDayDemo {

    //求你出生了多少天

    publicstatic void main(String[] args) {

       //创建一个指定年月日的Calenbdar对象

       Calendar cl = new GregorianCalendar();

       //1990.9.9

       cl.set(1990, 8,9);

      

       //求出90年到现在的相差的毫秒数

       long  cals = cl.getTimeInMillis();

       long now = Calendar.getInstance().getTimeInMillis();

       long days = now-cals;

       System.out.println(days);

       //将毫秒数转换成天

       int n = (int) (days/(1000*60*60*24));

       System.out.println("90后到现在出生了"+n+"");

       System.out.println("90后到现在出生了"+n/365+"");

    }

 

}

 

 

SimpleDateFormat:

package com.ibm.utildate;

 

import java.text.SimpleDateFormat;

import java.util.Date;

import java.text.*;

 

public class SimpleDateFormatDemo {

    public staticvoid main(String[] args)throws ParseException {

       String birth = "1968-3-8 12:24:33";

       SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd");

       // Date d = new Date();

       // Stringstr = sdf.format(d);

       // System.out.println(str);

       // }

 

//     将一个字符串转换成Date类型

//     Date date=sdf.parse(birth);

//     System.out.println(date);

//     System.out.println(new Date());

//    

       DateFormat df = DateFormat.getDateInstance();

       String stres = df.format(new Date());

       System.out.println(stres);

////      

       DateFormat df1 = DateFormat.getDateInstance(DateFormat.LONG);

       String str1 =df1.format(new Date());

       System.out.println(str1);

//    

       //返回一个时间的实例

       DateFormat df2 = DateFormat.getTimeInstance(DateFormat.FULL);

       String str2 = df2.format(new Date());

       System.out.println(str2);

      

 

    }

}

 

 

Calendar:

package com.ibm.utildate;

 

importjava.io.ObjectInputStream.GetField;

import java.util.Calendar;

importjava.util.Date;

import java.util.GregorianCalendar;

 

public class CalendarDemo {

    publicstatic void main(String[] args) {

       //canlendardemo可以用来获取一个时间中的部分数据如分钟

       //calendarGregorianCalendar的父类

       //calendar是一个抽象类

      

       //1创建Calendar的实例

         Calendar cl = new GregorianCalendar();

//       Calendar cl1 = Calendar.getInstance();

//       System.out.println(cl1);

////         System.out.println(cl==cl1);

//      

//     //2 采用日历类获取日历和时间

//       Date date = cl.getTime();

//       System.out.println(date);

//      

       //获取一个星期的第一天

//       int fday = cl.getFirstDayOfWeek();

//       System.out.println(fday);

//    

//     //获取到当前日期是一个星期的第几天

//       int dow = cl.get(Calendar.DAY_OF_WEEK);

//       System.out.println(dow);

//      

//       //获取到当前月份是这年中的第几月份

//       int my = cl.get(Calendar.MONTH);

//       System.out.println(my);

//      

////         //根据月份判断最大天数

//       int  maxday = cl.getActualMaximum(Calendar.DAY_OF_MONTH);

//       System.out.println(maxday);

////        

//      //取到当前时间是一个月的第几个星期?

         int wom=cl.get(Calendar.WEEK_OF_MONTH);

         System.out.println(wom);

        

         //取到月份

        intmonth = Calendar.MONTH;

        //取到这个月的最大天数

        intmaxday = Calendar.DAY_OF_MONTH;

        

    }

}