常用API:Math、System、Object、Arrays、基本类型包装类、日期类、BigDecimal

Math

 

 

 

 

开方:
java.lang.Math.sqrt(x)

java.lang.Math.sqrt(4) 的结果是2

 

package com.zjm.API;

public class MathDemo {
public static void main(String[] args) {
//public static int abs(int a),返回参数的绝对值
System.out.println(Math.abs(88));
System.out.println(Math.abs(-88));
System.out.println("-------");

//public static double ceil(double a),返回大于或者等于参数的最小double值,等于一个整数
System.out.println(Math.ceil(12.34));
System.out.println(Math.ceil(12.56));
System.out.println("-------");

//public static double floor(double a),返回小于或者等于参数的最大double值,等于一个整数
System.out.println(Math.floor(12.34));
System.out.println(Math.floor(12.56));
System.out.println("-------");

//public static int round(float a/double a),四舍五入返回最接近参数的int
System.out.println(Math.round(12.34));
System.out.println(Math.round(12.56));
System.out.println("-------");

//public static int max/min(int a, int b),返回两个数的最大最小值
System.out.println(Math.max(66, 88));
System.out.println(Math.min(66, 88));
System.out.println("-------");

//public static double pow(double a, double b),返回a的b次幂
System.out.println(Math.pow(2, 3));
System.out.println("-------");

// public static double random(),返回值为double的正值,[0.0,1.0]
System.out.println(Math.random());
System.out.println(Math.random()*100);


}
}

 

System

 

 

package com.zjm.API;

public class SystemDemo {
public static void main(String[] args) {
// System.out.println("开始");
// //public static void exit(int status),终止当前运行的Java虚拟机,非零表示异常终止
// System.exit(0);
// System.out.println("结束");

//public static native long currentTimeMillis(),返回距离1970年至今的时间,毫秒为单位
System.out.println(System.currentTimeMillis());
System.out.println(System.currentTimeMillis()*1.0/1000/60/60/24/365 + "年");

//计算程序运行时长
long start = System.currentTimeMillis();
for (int i = 0; i < 100; i++) {
System.out.println(i);
}
long end = System.currentTimeMillis();
System.out.println("共耗时"+(end-start)+"毫秒");
}
}

 

Object

 

 

 

 

 

 

package com.zjm.API;

public class Student {
private String name;
private int age;

public Student() {
}

public Student(String name, int age) {
this.name = name;
this.age = age;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}

@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;

Student student = (Student) o;

if (age != student.age) return false;
return name != null ? name.equals(student.name) : student.name == null;
}

@Override
public int hashCode() {
int result = name != null ? name.hashCode() : 0;
result = 31 * result + age;
return result;
}
}

package com.zjm.API;

public class ObjectDemo {
public static void main(String[] args) {
Student s = new Student("许乐乐",19);
     //直接输出对象变量默认调用toString方法,格式为s.toString()
System.out.println(s); //com.zjm.API.Student@776ec8df
System.out.println(s.toString()); //实际开发中数据的地址一般没有意义,toString方法应该可以直观的表示对象,所以建议所有类在创建时重写Object的toString类



//需求:比较两个类
Student s1 = new Student("许乐乐",19);
Student s2 = new Student("许乐乐",19);
System.out.println(s1==s2);//false
System.out.println(s1.equals(s2));//重写前为false,重写后为true
//“==”号对比的是双方的内存地址,Object的equal方法就是“==”,要比较对象内的值是否相同的话,需要在类中重写equal方法
/*
public boolean equals(Object obj) {
return (this == obj);
}
*/
}

}

 

 

 

 

 

 

 

 

 



Arrays

 

 PPT错误:二分查找法:binarySearch(),若查找不存在会返回负数,具体的负数为-(应该插入的位置的索引+1)

注意:二分查找法的前提一定是已经排列好的数组

 

 Arrays类对于Comparator比较器对象的支持:

 

 

 

 

 如果比较的为引用类型,定义比较方法如下:

 

 

 

 

 

 

 

 

基本类型包装类

 

 

 

 

 

 

 

 

 

 

 基本数据类型和String的相互转化:

int转String:

可以用String.valueOf(int i),或者.toString()方法,或者利用字符串拼接的特点在后面+“”

String转int:

可以用Integer.valueOf(String s),或者parseInt(String s)方法

所以记住一个valueOf方法就可以解决大部分

 

 

 

 

 

 

 

 

 

 

 

 

 

 

日期类

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BigDecimal

 

 

BigDecimal转换回Double对象:.doubleValue()方法

 

 

 

 

 

 

 

posted @ 2022-10-11 14:14  去公司搞点薯条  阅读(33)  评论(0)    收藏  举报