Math
Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。 Math 类没有构造方法, 全部是静态方法 。
常规的一些方法: (数学)
public static double abs(double a) 获取绝对值
public static double acos(double a) 求反余弦值
public static double cbrt(double a) 求立方根
public static double ceil(double a) 向上取整 1.2 ==> 2 1.7 ==>2
public static double exp(double a) 求 幂函数
public static int min(int a,int b) 求最小值
public static int max(int a,int b) 求最大值
public static double pow(double a,double b) 返回第一个参数的第二个参数次幂的值
public static double random() 产生随机数 大于等于 0.0 且小于 1.0 的伪随机 double 值。
public static double sqrt(double a) 返回正的平方根
System:
System 类包含一些有用的类字段和方法。它不能被实例化。(没有构造)
常用字段:
System.in:标准输入流,默认关联到键盘上
System.out:标准输出流,默认关联到控制台上
System.err:标准错误输出流,默认关联到控制台上,用于打印错误信息,在eclipse中,使用该流打印的内容是红色
常用方法:
exit(int status):结束虚拟机
gc():手动强制执行垃圾回收
currentTimeMillis():返回当前时间的毫秒值,表示的是从1970年1月1日0时0分0秒开始到现在经历 的毫秒值。1s = 1000ms
作用:可以通过计算两次的差值,来获取某段代码运行的时间
在开发里常常遇到gc问题: 内存溢出: 内存已经满了,没有空间来开辟新的东西了
与 内存泄漏 :该回收的对象没有被回收
gc : 垃圾回收器
1. 什么样的对象会被回收, 没有任何引用的对象会被回收
2. gc 回收的原则 :
1.计数算法 : 也就是 当这个对象被持有引用时 都会+1, 这个对象的计数是0 表示其可以被回收了 2.可欲达算法
如果想要一个变量快速回收:使用弱引用 或者软引用
如果想快速回收 使用强引用 static 变量就是强引用 最难被回收.
什么情况回收: 1.gc() 会被回收 2. 当 堆内存快满的时候,也会去回收这个
DateFormat:
对时间进行格式化: DateFormat 是一个时间格式化类 , 不能够被实例化
SimpleDateFormat:
把时间字符串转换成Date对象
new simpleDateFormat().format(Date) ==> 把Date 对象 转换为字符串格式
new simpleDateFormat().parse("2019-08-15") ==>把标准的时间字符串格式 转换成一个Date对象
Date:
Date 是一个时间对象 需要进行导包 java.util.Date
封装一个时间的工具类 1. String == >Date
2.Date ==>String yyyy-MM-dd HH:mm:ss
Calendar:
Calendar: 导包 java.util.Calendar 日历对象
Calendar 类是一个抽象类 不能被实例化
通过调用 Calendar.getInstance(); 获取 Calendar
常用的方法来 获取 : public int get(int field)
常规的一些常量: 1.获取当前的年份 Calendar.YEAR
2.获取月份 Calendar.MONTH 这个月份需要+1
3.获取日 Calendar.DAY_OF_MONTH
4. 获取小时 Calendar.HOUR_OF_DAY
5. 获取分钟 Calendar.MINUTE
6. 获取秒 Calendar.SECOND
7. 获取星期几 Calendar.DAY_OF_WEEK (获取星期的时候需要 -1)
8. 获取当前的 时区 cla.getTimeZone()
9. 表示上午: 获取的是Calendar. AM
10.表示下午: 获取的是 Calendar.PM