常用API
1. Math
-
Math类概述
Math包含执行基本数字运算的方法
Math类中的构造方法使用private修饰,所以不能访问它的构造方法
Math类中所有方法都是静态的,直接通过 类名. 进行调用
-
常用方法
方法名 说明 public static int abs(int a) 返回参数的绝对值 public static double ceil(double a) 向上取整 public static double floor(double a) 向下取整 public static int round(float a) 四舍五入 public static int max(int a,int b) 取最大值 public static int min(int a,int b) 取最小值 public static double pow (double a,double b) 返回a的b次幂的值 public static double random() 返回值为double的正值,[0.0,1.0)
2. System
-
常用方法
方法名 说明 public static void exit(int status) 终止当前运行的 Java 虚拟机,非零表示异常终止 public static long currentTimeMillis() 返回当前时间(以毫秒为单位) arraycopy(数据源数组,起始索引,目的地数组,起始索引,拷贝个数) 数组copy
3. Object
-
概述
每个类都可以将Object类作为父类,所有内部直接或间接的继承自该类
该类所具备的方法,所有类都会有一份
-
toString方法
Object类的toString方法得到的是对象的地址值
直接调用的话会得到这个对象的地址值
我们一般会重写toString方法,更方便的展示对象中的属性值
@Override public String toString() { return "Student{" + "name='" + name + '\'' + ", age=" + age + '}'; }
-
equals方法
用于对象之间的比较,返回true和false的结果
默认所比较的是对象之间的地址值
可以重写为比较对象的属性
@Override public boolean equals(Object o) { //this -- s1 //o -- s2 if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Student student = (Student) o; //student -- s2 if (age != student.age) return false; return name != null ? name.equals(student.name) : student.name == null; }
// 看程序,分析结果 String s = “abc”; StringBuilder sb = new StringBuilder(“abc”); s.equals(sb); sb.equals(s); //-------------------答案------------------------ public class InterviewTest { public static void main(String[] args) { String s1 = "abc"; StringBuilder sb = new StringBuilder("abc"); //1.此时调用的是String类中的equals方法. //保证参数也是字符串,否则不会比较属性值而直接返回false System.out.println(s1.equals(sb)); // false //StringBuilder类中是没有重写equals方法,用的就是Object类中的. System.out.println(sb.equals(s1)); // false } }
4. Objects
-
常用方法
方法名 说明 public static String toString(对象) 返回参数中对象的字符串表示形式。 public static String toString(对象, 默认字符串) 返回对象的字符串表示形式。 public static Boolean isNull(对象) 判断对象是否为空 public static Boolean nonNull(对象) 判断对象是否不为空
5. BigDecimal
-
概述
主要用来做精确计算
先进行精确运算,请使用字符串的构造
-
构造方法
方法名 说明 BigDecimal(double val) 参数为double BigDecimal(String val) 参数为String -
常用方法
方法名 说明 public BigDecimal add(另一个BigDecimal对象) 加法 public BigDecimal subtract (另一个BigDecimal对象) 减法 public BigDecimal multiply (另一个BigDecimal对象) 乘法 public BigDecimal divide (另一个BigDecimal对象) 除法 public BigDecimal divide (另一个BigDecimal对象,精确几位,舍入模式) 除法 //舍入模式 BigDecimal.ROUND_UP 进一法 BigDecimal.ROUND_FLOOR 去尾法 BigDecimal.ROUND_HALF_UP 四舍五入
包装类
1. 基本类型包装类
-
作用:
将基本数据类型封装成对象
可以基于对象中的方法操作该数据
-
基本类型对应的包装类
基本数据类型 包装类 byte Byte short Short int Integer long Long float Float double Double char Character boolean Boolean
2. Integer 类
-
概述
包装一个对象中的原始类型int的值
-
构造方法
方法名 说明 public Integer(int value) 根据 int 值创建 Integer 对象(过时) public Integer(String s) 根据 String 值创建 Integer 对象(过时) public static Integer valueOf(int i) 返回表示指定的 int 值的 Integer 实例 public static Integer valueOf(String s) 返回一个保存指定值的 Integer 对象 String -
自动拆箱和自动装箱
- 自动装箱
- 把基本数据类型转换为对应的包装类类型
- 自动拆箱
- 把包装类类型转换为对应的基本数据类型
Integer i = 100; // 自动装箱 i += 200; // i = i + 200; i + 200 自动拆箱;i = i + 200; 是自动装箱
- 自动装箱