常用API

b站课程原地址:https://www.bilibili.com/video/BV18J411W7cE?p=194

1 Math

Math类概述

  • 在java.lang包下,不需要导包
  • public final class Math:没有子类; 继承自Object
  • Math包含执行基本数字运算的方法,如基本指数,对数,平方根和三角函数
  • 创建Math对象,无构造方法???其成员变量和成员方法都是用static修饰的,可以直接通过类名访问:“Math.”
  • 常用方法:float类型:  12.56F
  • 可通过强转为int型来获取整数部分

2 System

System类概述

  • 在java.lang包下,不需要导包

  • public final class System:最终类,没有子类,继承自Object

  • 不能被实例化,成员都被static修饰,不需要创建对象,直接通过类名访问

  • public static void exit ( int status):终止当前运行的Java虚拟机;非零状态码表示异常终止

  • public static long currentTimeMillis():返回当前时间(以毫秒为单位)与1970年1月1日之间的毫秒值

3 Object

  • 在java.lang包下
  • public class Object:类Object是类层次结构的根,每个类都有Object作为超类。所有对象(包括数组)都实现了这个类的方法。
  • 构造方法:public Object()
  • 面向对象中,为什么子类的构造方法默认访问的是父类的无参构造方法?因为它们的顶级父类只有无参构造方法
  • 看方法的源码:选中方法,ctrl+B;选中->右击->go to->Declaration or Usages
  • toString()方法:输出对象其实就是调用了底层的toString()方法
  •    
    • 学生类继承自Object(),可以调用toString()方法:返回的是对象的字符串表示形式,所有的子类重写该方法
    • 子类可以自动生成toString()方法,在子类中 Alt+Insert:生成toString()方法
  • Object类中的equals()方法:
    • s1和s2均为new出来的Student对象,用“==”比较是比较了s1和s2的地址值,输出为false
    • equals()底层还是使用了“==”来比较两个对象,因此还是输出false
    • 需要重写equals()方法:可以在类中 Alt+Insert,生成equals()+hashCode()方法,可选择模板 IntelliJ Default
    • 其中name.equals(Student.name)中的equals()方法是String类中的equals()方法,比较的是两者的内容是否相同,相同则返回true

4 Arrays

  • 冒泡排序
    • 对要进行排序的数据中相邻的数据进行两两比较,将较大的数据放在后面(若从小到大排序),依次对所有的数据进行操作,直至排序完成
    • 比较的次数:arr.length-1;每完成一次比较,就有一个元素不用再参与比较
  • Arrays类
    • 在java.util下,因此使用需要导包
    • 成员都用static修饰,可以直接通过类名调用

其实Arrays、System、和Math在帮助文档中没有构造方法,但是它们在IDEA中的源码提供了一个private修饰的构造方法,其成员同样是使用public static修饰的,强制通过类名调用。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值