1.Date类
Date类位于java.util包,常用来处理时间和日期的一个类,不过处理日期的功能逐渐被Calendar类所替代。
一个Date对象表示系统运行到此时的时间(从1970年1月1日00:00:00开始计算,单位为毫秒)
构造方法:创建的对象默认的值系统运行到此时的时间
Date date=new Date();
可通过构造方法将Long类型(可通过System中的currentTimeMillis()方法获取)的数据转换为Date类的数据
2.Calendar类(日期类)
Calendar类中很多方法与Date类中相似,但是相比而言,优势更大。替代了Date类中对日期进行操作的方法。
Caledar类是一个抽象类,无法创建对象,但是可以通过实现子类获得一个Calendar对象,有两种方式,代码实现如下:
public class CalenderDome {
public static void main(String[] args) {
Calendar s = new GregorianCalendar();
Calendar s1 = Calendar.getInstance();
//Calerar类为抽象类,两种方式皆为获得一个日历对象,实现的是子类中的方法
}
}
GregorianCalendar类是Calendar类的一个字类
2.1get()方法
可通过get方法调用Calendar类中众多方法,可利用其对Calendar对象完成各种操作,具体代码实现如下;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class CalenderDome {
public static void main(String[] args) {
Calendar s = new GregorianCalendar();
Calendar s1 = Calendar.getInstance();
//Calerar类为抽象类,两种方式皆为获得一个日历对象,实现的是子类中的方法
int i = s1.get(Calendar.DAY_OF_WEEK);
//求今天位于本周的第几天
System.out.println(i);
int i2=s1.get(Calendar.DAY_OF_MONTH);
//求今天位于本月的第几天
System.out.println(i2);
int s3=s1.get(Calendar.DAY_OF_YEAR);
//求今天位于本年的第几天
System.out.println(s3);
}
}
2.2getTime()
可通过getTime()方法将Calendar类型转换为Date类型
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class CalenderDome {
public static void main(String[] args) {
Calendar s = new GregorianCalendar();
Date date=s.getTime();
System.out.println(date);
}
}
//输出结果:Fri Nov 26 15:19:50 CST 2021
2.2getTimeINmillis()
可通过getTimeINmillis方法将Calendar类转换为Long类型
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class CalenderDome {
public static void main(String[] args) {
Calendar s = new GregorianCalendar();
Long c=s.getTimeInMillis();
System.out.println(c);
}
}
//输出结果:1637911527214
3.SimpleDateFormat类
SimpleDateFormat类将字符转换为Date类型,将Date类型转换为字符串,主要用于网页的时间切换等应用,注意转换时需要与时间格式相匹配。
3.1parse()
parse()方法可将字符串转换为转换为Date类型;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class SimpleDateFormatDome {
public static void main(String[] args) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy_MM_dd HH_MM_ss");
String birthday = new String("2002_06_05 20_15_55");
Date date=simpleDateFormat.parse(birthday);
System.out.println(date);
}
}
//输出结果:Wed Jun 05 20:15:55 CST 2002
3.2format()
format()方法可将Date类型转换为字符串类型
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class SimpleDateFormatDome {
public static void main(String[] args) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy_MM_dd HH_MM_ss");
Date date1=new Date();
String s=simpleDateFormat.format(date1);
System.out.println(s);
}
}
//输出结果:2021_11_26 15_11_49
4.BigInteger类
BigInteger类即为大整数类,当Long类型无法存储时,可以选择用BigInteger类型的对象存储
常用的方法为加法:add();减法subtract();乘法ultiply();除法devide();
BigDecimal类与BigInteger类相似,但前者针对的是大浮点型,需注意除法中出现无限不循环小数时会报错,这时需要加参数,保留小数,及舍入方法
import java.math.BigDecimal;
import java.math.BigInteger;
public class BigIntegerDome {
public static void main(String[] args) {
BigInteger b = new BigInteger("05326502552525969845988544985");
BigInteger b1 = new BigInteger("5");
BigInteger b2 = new BigInteger("2");
System.out.println(b.add(b1));
System.out.println(b1.subtract(b2));
System.out.println(b1.multiply(b2));
}
}