版权声明: https://blog.csdn.net/qq_40794602/article/details/87278730
BigInteger类的概述和方法使用:
- BigInteger的概述:
- 可以让超过Integer范围内的数据进行运算
- 构造方法:
- public BigInteger(String val)
- 成员方法:
- public BigInteger add(BigInteger val)
- public BigInteger subtract(BigInteger val)
- public BigInteger multiply(BigInteger val)
- public BigInteger divide(BigInteger val)
- public BigInteger[] divideAndRemainder(BigInteger val)
BigInteger--EG:
//需要导入 import java.math.BigInteger;
public static void main(String[] args) {
BigInteger bi1 = new BigInteger("2147483647");
BigInteger bi2 = new BigInteger("1");
//+ 运算
BigInteger sum = bi1.add(bi2);
System.out.println(sum);
//- 运算
BigInteger subtract = bi1.subtract(bi2);
System.out.println(subtract);
//* 运算
BigInteger multi = bi1.multiply(bi2);
System.out.println(multi);
// / 运算
BigInteger divide = bi1.divide(bi2);
System.out.println(divide);
// % 求模
BigInteger[] bis = bi1.divideAndRemainder(bi2);
System.out.println("商:" + bis[0]);
System.out.println("余数:" + bis[1]);
}
BigDecimal类的概述和方法使用:
- BigDecimal的概述:
- 由于在运算的时候,float类型和double很容易丢失精度。所以,为了能精确的表示、计算浮点数,Java提供了BigDecimal
- 构造方法:
- public BigDecimal(String val)
- 成员方法:
- public BigDecimal add(BigDecimal augend)
- public BigDecimal subtract(BigDecimal subtrahend)
- public BigDecimal multiply(BigDecimal multiplicand)
- public BigDecimal divide(BigDecimal divisor)
BigDecimal--EG:
//需要导入 import java.math.BigDecimal;
public static void main(String[] args) {
// System.out.println(2.0 - 1.1); //不准确
BigDecimal bd1 = new BigDecimal("2.0");
BigDecimal bd2 = new BigDecimal("1.1");
// + 运算
BigDecimal sum = bd1.add(bd2);
System.out.println(sum);
// - 运算
BigDecimal subtract = bd1.subtract(bd2);
System.out.println(subtract);
// * 运算
BigDecimal multi = bd1.multiply(bd2);
System.out.println(multi);
// / 运算
BigDecimal bd3 = new BigDecimal("1.0");
BigDecimal bd4 = new BigDecimal("0.25");
/***
* 在使用BigDecimal做除法运算时,这两个数要能被除尽,否则就会报错
*/
BigDecimal divide = bd3.divide(bd4);
System.out.println(divide);
}
Date类的概述和方法使用:
- Date类的概述:
- 类 Date 表示特定的时间,精确到毫秒。
- 构造方法:
- public Date()
- public Date(long date)
- 成员方法:
- public long getTime()
- public void setTime(long time)
Date--EG:
//需要导入 import java.util.Date;
public static void main(String[] args) {
//第一种构造方法
Date data1 = new Date();
System.out.println(data1.getTime()); //获取 1970.1.1 0:0:0 到现在走过的毫秒数(时间戳)
//第二种构造方法
long time = 1517535712590L;
Date date = new Date(time);
}
SimpleDateFormat类实现日期和字符串的相互转换:
- DateFormat类的概述:
- DateFormat 是日期/时间格式化子类的抽象类,用于格式化并解析日期或时间。它是一个抽象类,所以使用其子类SimpleDateFormat
- SimpleDateFormat构造方法:
- public SimpleDateFormat() //用的少
- public SimpleDateFormat(String pattern)
- 成员方法:
- public final String format(Date date)
- public Date parse(String source)
SimpleDateFormat--EG:
//需要导入import java.text.DateFormat;
// import java.text.SimpleDateFormat;
// import java.util.Date;
public static void main(String[] args) {
//1.获取当前日期时间
Date date = new Date();
System.out.println(date);
//2.想把日期的显示格式 “Fri Feb 02 10:07:16 CST 2018” 转成 “2018年02月02日 10:07:16”
//2.1创建一个 “日期格式化对象”
/***
* pattern:表达式
* y:表年
* M:表示月
* d:表示日
* HH:大写的H表示24小时进制
* hh:小写的h表示12小时进制
* a:表示上下午
* mm:表示分
* ss:表示秒
* z:表示时区
* S:表示毫秒
*/
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
//SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
//DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//多态
//2.2 把Date类型 转成固定格式的 字符串
String str = sdf.format(date);
System.out.println(str);
}
Calendar类的概述和获取日期的方法:
- Calendar类的概述:
- Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
- 成员方法:
- public static Calendar getInstance()
- public int get(int field)
- EG1:
//需要导入 import java.util.Calendar; public static void main(String[] args) { Calendar calendar = Calendar.getInstance(); System.out.println(calendar); //2.获取年 System.out.println("年" + calendar.get(Calendar.YEAR)); //2.获取月 System.out.println("月" + calendar.get(Calendar.MONTH));//月数 + 1 //2.获取日 System.out.println("日" + calendar.get(Calendar.DAY_OF_MONTH)); //2.获取时 System.out.println("时" + calendar.get(Calendar.HOUR)); //2.获取分 System.out.println("分" + calendar.get(Calendar.MINUTE)); //2.获取秒 System.out.println("秒" + calendar.get(Calendar.SECOND)); //获取周几 //日 一 二 三 四 五 六 //1 2 3 4 5 6 7 System.out.println("周" + calendar.get(Calendar.DAY_OF_WEEK)); }
EG2:
//需要导入 import java.util.Calendar; public static void main(String[] args) { //Calendar类的set()方法使用 Calendar calendar1 = Calendar.getInstance(); //设置日历为2016年3月9日 calendar1.set(2016, 2, 9);//设置年月日 //获取年月 System.out.println("年" + calendar1.get(Calendar.YEAR)); System.out.println("月" + calendar1.get(Calendar.MONTH)); System.out.println("日" + calendar1.get(Calendar.DAY_OF_MONTH)); //Calendar类的add()方法使用 Calendar calendar2 = Calendar.getInstance(); //add方法,给字段加值 calendar2.add(Calendar.YEAR, 2);//给年字段+1 calendar2.add(Calendar.MONTH, -1);//给月份+1 //获取年 System.out.println("年" + calendar2.get(Calendar.YEAR)); //获取月 System.out.println("月" + calendar2.get(Calendar.MONTH)); }