JAVA常用API
笔者正在学习JavaSE,写的一些自用笔记,以做留档。
MATH
- 求绝对值 Math.abs(x)
- 求幂次 Math.pow(x,p) x为底数,p为指数
- 求开根 Math.sqrt(x)
- 求最大值 Math.max(a,b)
- 求最小值 Math.min(a,b)
- 求四舍五入 Math.round(x)
包装类
作用:由于Java中基本数据类型并不是面向对象特性的,所以采用包装类对基本数据类型进行包装,使它们具有面向对象的特性。
byte --> Byte
short --> Short
int --> Integer
long --> Long
float --> Float
double -->Double
char -->Character
boolean -->Boolean
将基本数据类型int变为 interger 方法:
Integer x = 10;
包装类的定义和基本数据类型一致,编译器会自动帮助实现对象
将String类型的 数据变为基本数据类型,实现计算:
int x = Integer.parseInt(str);
时间类 Date 和 Calendar
Date类主要作用:实现时间差的计算。
计算机中内部存储时间的方法:计算机中将1970年1月1日0h0min0s设置为0,每过1ms这个数字就会去自动的加1,通过这个数字即可计算时间差。
常用到的代码:
Date d = new Date();
d.getTime();//返回表示当前时间的数字
Calendar类主要作用:获取年,月,日,时,分,秒;在对时间进行修改后,可自动计算年月日时分秒的变化。
常用代码:
Calendar cal = Calendar.getInstance();
cal.get(Calendar.YEAR);//获取年份
cal.get(Calendar.MONTH + 1);//获取月份
cal.get(Calendar.DATE);//获取日期
cal.get(Calendar.HOUR_OF_DAY);//获取时间
cal.get(Calendar.MINUTE);//获取分钟
cal.get(Calendar.SECOND);//获取秒
cal.set(Calendar.DATE,cal.get(Calendar.DATE)+30); //设置时间,会自动完成年月日时分秒的计算 //两个参数,第一个参数是要设置的时间对象,第二个是具体数值
Date类转Calendar类:
Date d = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(d);
Calendar类转Date类
Date d = cal.getTime();
SimpleDateFormat
作用:格式化时间,时间格式一般采用“yyyy-MM-dd HH:mm:ss"
format(Date d);//将Date类型转为格式化后的字符串类型
// 将Date类型转为格式化后的字符串类型
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str = sdf.format(d);
System.out.println(str);
parse(String str); //将字符串转为Date类,由于str不一定满足格式要求,此时要注意异常处理
String str = "2025-04-01 12:00:00";//满足格式 yyyy-MM-dd HH:mm:ss
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d = sdf.parse(str);
System.out.println(d);
求取时间差
Date d1 = new Date();
//获取新的时间
Date d2 = new Date();
long Diff = d2.getTime() - d1.getTime(); //毫秒级时间差
long DiffSec = Diff/1000; //秒级时间差
long DiffMin = DiffSec/60; //分钟级时间差
//求经过了多少小时多少分钟
long DiffpastHour = DiffMin/60;
long DiffpastMin = DiffMin%60;
System.sout.println("经过了" + DiffpastHour + "小时" + DiffpastMin + "分钟");