什么是API
API(Application Programming Interface)即应用程序编程接口。Java 语言的强大之处在于它预先定义好了多种多样的类库,程序设计师可以直接使用这些已经被打包好的接口和类来实现具体的功能。在编写程序时直接导入就行了,不需要自己重新写,大大提高了编程的效率和质量。另外,API 除了有“应用程序编程接口”的意思外,还特指API的说明文档,也称为帮助文档。通俗的来说API就是用来实现业务的方法,在Java中一切可以调用的方法都是API。
为什么要学习API
学习任何一种语言都需要学习API,API就是java语言中的方法,想要学好java就必须学好API,在我们开发过程中,大部分的功能都可以通过调用API来完成,我们不需要在去写那么多的代码,节省了代码量,提高了开发效率,而且一些java本身没有的功能,我们也可以通过调用一些别人封装好的API来实现,比如,天气预报,地图等等,我们想要实现这些功能只需要去调用它的API就能实现。
怎么使用API手册
API手册里面包含了java里面所有方法的介绍,里面包含了对方法的详细介绍,里面有方法的构造方法,方法摘要,特殊字段摘要,对每个方法的详解,有固定的格式。我们在使用的时候可以查看格式是否符合标准。
常用API
Object
类 Object 是类层次结构的根类。每个类都使用 Object 作为超类。所有对象(包括数组)都实现这个类的方法
常用方法
方法 | 作用 | 返回值类型 |
---|---|---|
toString() | 返回该对象的字符串表示 | String |
equals() | 指示其他某个对象是否与此对象“相等” | boolean |
hashCode() | 返回该对象的哈希码值 | int |
使用的时候可以直接使用,例如
String []s={"h","e","l","l","o"};
System.out.println(s.hashCode());
注:1、toString()默认返回的是 类名@地址 的格式,来展示对象的地址值,如果想看属性值我们可以重写这个方法,重写后返回的就是把属性值拼接成一个字符串
2、equ当前对象和参数对象比较大小,默认是比较内存地址,如果要比较对象的属性,可以重写该方法
String
继承Object类,实现Serializable, Comparable, CharSequence接口
String是字符串对象,是一个封装了char[]数组的对象,字符串的长度从创建之后不可更改
常用方法
方法 | 作用 | 返回值类型 |
---|---|---|
charAt() | 返回指定索引处的char值 | char |
concat() | 将指定字符串连接到此字符串的结尾 | String |
length() | 获取字符串的长度 | int |
lastIndexOf() | 返回指定字符在此字符串中最后一次出现处的索引 | int |
substring() | 返回一个新的字符串,它是此字符串的一个子字符串 | String |
equals() | 将此字符串与指定的对象比较 | boolean |
startsWith() | 测试此字符串是否以指定的前缀开始 | boolean |
endsWith() | 测试此字符串是否以指定的后缀结束 | boolean |
split() | 根据给定正则表达式的匹配拆分此字符串 | String[] |
trim() | 去除字符串两端的空格 | String |
由于String是常量,在使用的时候可以直接使用
StringBuilder/StringBuffer
继承Object类,实现 Serializable, CharSequence接口
StringBuilder/StringBuffer类是可以替代String类的另一种处理字符串的解决方案。一般来说,只要使用字符串的地方,都可以使用StringBuilder/StringBuffer类。StringBuilder/StringBuffer类比String类更灵活。可以给StringBuilder或StringBuffer中添加或追加新的内容,但是String对象一旦创建,它的值就确定了。一般只用于
字符串的拼接。
方法 | 作用 | 返回值类型 |
---|---|---|
append() | 将参数的字符串表示形式追加到此序列 | StringBuilder/StringBuffer |
charAt() | 返回此序列中指定索引处的 char 值 | char |
使用方法类似String。
包装类
八大基本类型都有对应的包装类,是为了把原始数据当做对象进行操作;
基本类型 | 包装类型 | 字节数 | 位数 | 取值大小 |
---|---|---|---|---|
byte | Byte | 1 | 8 | -2的7次方到2的7次方-1 |
short | Short | 2 | 16 | -2的15次方到2的15次方-1 |
int | Integer | 4 | 32 | -2的31次方到2的31次方-1 |
long | Long | 8 | 64 | -2的63次方到2的63次方-1 |
float | Float | 4 | 32 | 3.402823e+38 ~ 1.401298e-45 |
double | Double | 8 | 64 | 1.797693e+308~ 4.9000000e-324 |
char | Char | 2 | 16 | |
boolean | Boolean | 1(前7位是0) | 1 | 0/1 |
数字包装类的父类都Number(抽象类),提供了各种获取值的方式,已经完成了强转。常用方法和用法类似。
在Integer类中,包含256个Integer缓存对象,范围是 -128到127。使用valueOf()时,如果指定范围内的值,访问缓存对象,而不新建;如果指定范围外的值,直接新建对象。
包装类都是被Final关键字修饰,所以使用的时候可以直接使用
Java包装类的共同点
日期类Date
继承Object类,实现了 Serializable, Cloneable, Comparable接口
用来封装一个毫秒值表示一个精确的时间点。从1970-1-1 0点开始的毫秒值
常用方法
方法 | 作用 | 返回值类型 |
---|---|---|
getDate() | 获取今天是当月的几号 | int |
getDay() | 获取今天是星期几 | int |
getHours() | 获取现在是几点 | int |
getMonth() | 现在是几月,底层代码-1 | int |
getMinutes() | 现在是每小时的哪一分钟 | int |
getSeconds() | 现在是每分钟的哪一秒 | int |
getTime() | 自1970-1-1 零点到现在的毫秒值 | long |
getYear() | 从1900年到现在一共多少年了 | int |
toLocaleString() | 变成当前的系统日期 | String |
日期类Date时普通类,在使用的时候需要创建一个Date对象才是使用。
补充:Java还提供了日历类Calendar
关于日历类的讲解可以参考我看到别人写的一篇博客
Calendar详解
日期工具类SimpleDateFormat
继承DateFormat类。
日期格式化工具,可以把Date对象格式化成字符串,也可以日期字符串解析成Date对象。
SimpleDateFormat类主要是用作日期类型转换用的,常用的日期格式化
将字符串转换为对应日期,创建对象是要规范输入格式:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
需要注意:常用的日期表示:y-年,M-月,d-日,W-月中的周数,F-星期;注意大小写
常用方法
方法 | 作用 | 返回值类型 |
---|---|---|
format() | 把Date格式化成字符串 | String |
parse() | 把String解析成Date | Date |
使用时需要注意输入格式是否符合定义的标准来使用,一般用于将字符串转换成Date类型或者将Date类型转换成字符串
BigDecimal/BigInteger
提供以下操作:算术、标度操作、舍入、比较、哈希算法和格式转换。toString() 方法提供 BigDecimal 的规范表示形式。
常用方法
方法 | 作用 | 返回值类型 |
---|---|---|
add() | 加法 | BigDecimal |
subtract() | 减法 | BigDecimal |
multiply() | 乘法 | BigDecimal |
divide() | 除法 | BigDecimal |
主要用于解决浮点数运算不精确问题
使用时需要创建对象才能使用。
Math类
继承Object,Math类是一个很有用的数学帮助类,使用也非常简单,这个类比较特殊,首先他和String类一样都是用final修饰,所以不能有子类,还有就是它的构造方法是私有的,也就是我们不能通过new的方法在其它类中构造Math对象,那么我们怎样调用它的方法,原来它的所有的方法都是静态方法,也就是可以直接使用类名就可以访问方法了
常用方法
方法 | 作用 |
---|---|
abs() | 取绝对值 |
max() | 获取两个数的较大数 |
min() | 获取两个数的较小数 |
ceil() | 四舍五入取值 |
floor() | 向下取整 |
top() | 向上取整 |
sqrt() | 获取平方值 |
pow(x,y) | x的y次幂 |
API的方法实在太多了,一时半会也说不完,想要学好API需要在平常多看字典,多敲多练才行,不要对这些方法死记硬背,使用的时候多查字典就可以了。
未来掌握在自己手里,今天的努力是为了更好的明天,加油!!!