API
API (Application Programming Interface) :应用程序编程接口
1如何使用API帮助文档
打开帮助文档
找到索引选项卡中的输入框
在输入框中输入Random
看类在哪个包下
看类的描述
看构造方法
看成员方法
1.1 Math(应用)
- 1、Math类概述
- Math 包含执行基本数字运算的方法
- 2、Math中方法的调用方式
- Math类中无构造方法,但内部的方法都是静态的,则可以通过 类名.进行调用
- 3、Math类的常用方法
1.2 System
需求:在控制台输出1-10000,计算这段代码执行了多少毫秒
1.3 Object类的toString方法 - Object类概述
Object 是类层次结构的根,每个类都可以将 Object 作为超类。所有类都直接或者间接的继承自该类,换句话说,该类所具备的方法,所有类都会有一份
-查看方法源码的方式
选中方法,按下Ctrl + B
重写toString方法的方式- Alt + Insert 选择toString
- 在类的空白区域,右键 -> Generate -> 选择toString
toString方法的作用:
以良好的格式,更方便的展示对象中的属性值
1.4 Object类的equals方法(应用)
equals方法的作用
用于对象之间的比较,返回true和false的结果
举例:s1.equals(s2); s1和s2是两个对象
重写equals方法的场景
不希望比较对象的地址值,想要结合对象属性进行比较的时候。
-重写equals方法的方式 - alt + insert 选择equals() and hashCode(),IntelliJ Default,一路next,finish即可
- 在类的空白区域,右键 -> Generate -> 选择equals() and hashCode(),后面的同上。
1.5 Objects (应用)
1.6 BigDecimal (应用)
总结
- BigDecimal是用来进行精确计算的
- 创建BigDecimal的对象,构造方法使用参数类型为字符串的。
- 四则运算中的除法,如果除不尽请使用divide的三个参数的方法。
BigDecimal divide = bd1.divide(参与运算的对象,小数点后精确到多少位,舍入模式);
参数1 ,表示参与运算的BigDecimal 对象。
参数2 ,表示小数点后面精确到多少位
参数3 ,舍入模式
BigDecimal.ROUND_UP 进一法
BigDecimal.ROUND_FLOOR 去尾法
BigDecimal.ROUND_HALF_UP 四舍五入
3.包装类
2 基本类型包装类
-
基本类型包装类的作用
将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据
常用的操作之一:用于基本数据类型与字符串之间的转换 -
基本类型对应的包装类
-
| 基本数据类型 | 包装类 |
| byte | Byte |
| short | Short |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |
| char | Character |
| boolean | Boolean |
2.1 Integer类 -
Integer类概述
包装一个对象中的原始类型 int 的值 -
Integer类构造方法
2.2 自动拆箱和自动装箱(理解) -
自动装箱
把基本数据类型转换为对应的包装类类型 -
自动拆箱
把包装类类型转换为对应的基本数据类型
Integer i = 100; // 自动装箱
i += 200; // i = i + 200; i + 200 自动拆箱;i = i + 200; 是自动装箱
2.3 int和String类型的相互转换
int转换为String -
转换方式
- 方式一:直接在数字后加一个空字符串
- 方式二:通过String类静态方法valueOf()
String转换为int
-
转换方式
- 方式一:先将字符串数字转成Integer,再调用valueOf()方法
- 方式二:通过Integer静态方法parseInt()进行转换
案例需求
有一个字符串:“91 27 46 38 50”,请写程序实现最终输出结果是:27 38 46 50 91
3.1 递归
递归的介绍
-
以编程的角度来看,递归指的是方法定义中调用方法本身的现象
-
把一个复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解
-
递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算
-
递归的注意事项 -
递归一定要有出口。否则内存溢出
-
递归虽然有出口,但是递归的次数也不宜过多。否则内存溢出
- 3.2用递归求5的阶乘,并把结果在控制台输出
+3.3 需求
在数组{1,2,3,4,5,6,7,8,9,10}中,查找某个元素的位置
- 实现步骤
- 定义两个变量,表示要查找的范围。默认min = 0 ,max = 最大索引
- 循环查找,但是min <= max
- 计算出mid的值
- 判断mid位置的元素是否为要查找的元素,如果是直接返回对应索引
- 如果要查找的值在mid的左半边,那么min值不变,max = mid -1.继续下次循环查找
- 如果要查找的值在mid的右半边,那么max值不变,min = mid + 1.继续下次循环查找
- 当min > max 时,表示要查找的元素在数组中不存在,返回-1.
3.4 冒泡排序 (理解)
- 冒泡排序概述
一种排序的方式,对要进行排序的数据中相邻的数据进行两两比较,将较大的数据放在后面,依次对所有的数据进行操作,直至所有数据按要求完成排序
如果有n个数据进行排序,总共需要比较n-1次
每一次比较完毕,下一次的比较就会少一个数据参与
3.5 Arrays
Arrays的常用方法