学习目标:
- API
- object类
- objects类
- BigDecimal类
学习内容:
1、Math 类概述
Math包含执行基础数字运算方法
public class math { public static void main(String[] args) { //public static int abs(int a) 返回参数的绝对值 int abs = Math.abs(-10); System.out.println(abs); //public static double ceil(double a) 向上取整 double ceil = Math.ceil(10.1); System.out.println(ceil); //public static double floor(double a) 向下取整 double floor = Math.floor(10.6); System.out.println(floor); //public static int round(float a) 四舍五入 long round = Math.round(10.1); System.out.println(round); //public static int max(int a,int b) 返回两个int值中的最大值 int max = Math.max(10,20); System.out.println(max); //public static int min(int a,int b) 返回两个int值中的最小值 int min = Math.min(10, 20); System.out.println(min); //public static double pow(double a,double b) 返回a的b次幂的值 double pow = Math.pow(2, 4); System.out.println(pow); // public static double random() 返回值为double的正值,[0,0,1,0] 随机数 for (int i = 0; i < 10; i++) { double random = Math.random(); System.out.println(random); } } }
2、System
public class System { public static void main(String[] args) { //public static void exit (int status) 终止当前运行的Java虚拟机非零表示异常终 //public static long currentTimeMillis() 返回当前时间(以毫秒为单位) long start = System.currentTimeMillis(); for(int i = 0; i < 10000; i++){ System.out.println(i); } long end = System.currentTimeMillis(); System.out.println(end - start); //arraycopy(数据源数组,起始索引,拷贝个数) int [] arr1 = {1,2,3,4,5}; int [] arr2 = new int[10]; //需求:要把arr1数据拷贝到arr2 System.arraycopy(arr1,0,arr2,0,arr1.length); for (int i = 0; i < arr2.length; i++) { System.out.println(arr2[i]); } } }
3、object类
Object类的toString方法得到的是对象的返回值一般要对toObject方法进行重写。
常用方法
public String toString() 返回对象的字符串表示形式,建议所有子类的重写方法,自动生成
public boolean equals(另一个对象) 比较对象是否相等,默认比较地址,重写可以比较内容,自动生成。
面试题
public class Interview { public static void main(String[] args) { String s1 = \"abc\"; StringBuilder sb = new StringBuilder(\"abc\"); //调用的String类中的equals方法,所以保证参数也是字符串,否则会传回false System.out.println(s1.equals(sb)); //StringBuilder类中没有equals方法,所以就用object类中的方法,地址不一样所以为false System.out.println(sb.equals(s1)); } }
4、Objects类常用方法
public class MyObjectsDemo { public static void main(String[] args) { //public static String toString(对象) 返回参数中对象的字符串表现形式 //Student s = new Student(\"小罗同学\",50); //String result = Objects.toString(s); //System.out.println(result); //public static String toString(对象,默认字符串) 返回对象的字符串表现形式 //Student s1 = new Student(\"小花同学\",23); //Student s1 = null; //String result = Objects.toString(s1, \"随便写一个\"); //System.out.println(result); //public static Boolean isNull(对象) 判断对象是否为空 //Student s = null; //Student s = new Student(); //boolean result = Objects.isNull(s); //System.out.println(result); //public static Boolean nonNull(对象) 判断对象是否不为空,与上面相反 //Student s = new Student(); //Student s = null; //boolean result = Objects.isNull(s); //System.out.println(result); } }
5、BigDecimal类
BigDecimal 类的构造方法
BigDecimal(double val) 参数double
BigDecimal(double val) 参数String
public class Demo1 { public static void main(String[] args) { //如果想进行精确运算,那么请使用字符串的构造 //BigDecimal bd1 = new BigDecimal(0.1); //BigDecimal bd2 = new BigDecimal(0.2); BigDecimal bd1 = new BigDecimal(\"0.1\"); BigDecimal bd2 = new BigDecimal(\"0.2\"); //public BigDecimal add(另一个BigDecimal对象) 加法 BigDecimal add = bd1.add(bd2); System.out.println(\"和为\" + add); //System.out.println(0.1 + 0.2); //public BigDecimal subtract(另一个BigDecimal对象) 减法 BigDecimal subtract = bd1.subtract(bd2); System.out.println(\"差为\" + subtract); //public BigDecimal multiply(另一个BigDecimal对象) 乘法 BigDecimal multiply = bd1.multiply(bd2); System.out.println(\"积为\" + multiply); //public BigDecimal divide (另一个BigDecimal对象) 除法 BigDecimal divide = bd1.divide(bd2); System.out.println(\"商为\"+ divide); } }
© 版权声明
THE END
请登录后查看评论内容