Java API
常用Java包介绍
- java.lang
Java语言包,包含String、StringBuffer、Integer、Math、System。
任何类中,该包中的类都会被自动导入。 - java.util
包含一些实用的工具类( 包含集合类, Scanner, Random等类) - java.sql
提供数据库功能的类。
Object类
Object介绍及方法
- Object类是所有类的父类类,是Java语言中唯一一个没有父类的类。
- 一个类如果没有明确继承一个类,它就会默认继承Object类。
- 在Object类中定义的方法,在所有类中都可以使用。
public boolean equals(Object obj) 比较两个对象引用的值是否相等(比较哈希地址)
public String toString() 返回 类名@地址值
equals方法判断相等
equals()方法和“= =”运算符的区别
- equals()只能比较引用类型数据,"= ="既能比较引用类型又能比较基本类型
- “= =”比较的引用类型的地址是否一样
- equals()方法,比较引用类型的值(地址)但有的子类会重写方法,不再比较引用类型变量的值(地址)比如String类就重写equals()方法,比较的是两个字符串内容
包装类
包装类简介
Everything is object.
- Java编程语言不把基本数据类型看作对象。Java 编程语言提供包装类来将基本数据类型看作对象。
- 在功能上包装类能够完成数据类型之间(除boolean)的相互转换,尤其是基本数据类型和String类型的转换。
- 包装类中包含了对应基本数据类型的值,封装了String和基本数据类型之间相互转换的方法,还有一些处理这些基本数据类型时非常有用的属性和方法。

基本类型与包装类相互转换
- 自动的装箱和自动拆箱
在进行基本数据类型和对应的包装类转换时,系统将自动进行
直接赋值给对应的包装类;包装类直接赋值给基本类型
- 字符串转换为基本数据类型
字符串通过parseXXX(String s)方法转换为基本数据类型
字符串类
- 字符串是我们在编程中最常使用的一种数据类型,它的表现形式可以分为两种:
String
StringBuffer。 - 字符串不属于8种基本的数据类型,而是一种引用类型。
- String字符串内容不可改变。
- StringBuffer字符串内容可以改变。
- String类是final类型的类。
String的创建
String的创建:有两种方式:
- 静态方式(常用)。像是给变量直接赋值一样来使用。如:String s1 = “abc”; String s2 = “abc”;
- 动态方式。动态的内存分配,使用new运算符。如:String s3= new String(“abc”); String s4= new String(“abc”);
两种方式创建的字符串区别:
- 使用静态方式创建的字符串,在方法区的常量池中只会产生唯一一个字符串对象,使用该方式产生同样一个字符串时,内存中不再开辟另外一块空间,而是两个引用变量指向同一个字符串对象。
- 使用动态方式创建的字符串,在堆内存中会产生出不同的对象。

String类中常用的方法
| 方法 | 含义 |
|---|---|
| boolean equals(String) | 判断两个字符串对象的内容是否相等 |
| boolean equalsIgnoreCase(String) | 比较两个字符串的内容是否相等,忽略大小写 |
| String toUpperCase( ) | 将String对象中的所有字符都转换为大写 |
| String toLowerCase( ) | 将String对象中的所有字符都转换为小写 |
| char charAt(int) | 返回指定索引处的 char 值 |
| String substring(int begin) | 返回一个新字符串,该字符串是从begin开始的字符串的内容 |
| String substring(int begin,int end) | 返回一个新字符串,该字符串是从begin开始到end-1结束的字符串的内容 |
| int indexOf/lastIndexOf(char) | 返回指定字符在此字符串中第一次/最后一次出现处的索引。 |
| int length( ) | 返回此字符串的长度 |
| String replace(char oldChar, char newChar) | 返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的 |
| boolean startsWith(String prefix) | 此字符串是否以指定的前缀开始 |
| boolean endsWith(String suffix) | 此字符串是否以指定的后缀结束 |
StringBuffer类
- StringBuffer类用于内容可以改变的字符串
可以使用StringBuffer来对字符串的内容进行动态操作,不会产生额外的对象 - StringBuffer对象的创建
构造有初始化内容的字符串
构造一个空的字符串。
StringBuffer类常用方法
| 方法 | 含义 |
|---|---|
| length( ) | 返回长度(字符数) |
| append(String str) | 追加字符串内容 |
| setCharAt(int,char) | 将给定索引处的字符修改 |
| StringBuffer delete(int begin,int end) | 移除此序列的子字符串中的字符 |
| reverse( ) | 将此字符串内容反转 |
| toString( ) | 将StringBuffer对象转换成相应的String |
字符串总结
-
字符串类分为String 和StringBuffer/StringBuilder
String的特点是内容不可改变
StringBuffer/StringBuilder内容可以改变,不产生额外对象
如果字符串内容一经创建不再改变,使用String
如果字符串内容使用时频繁发生改变,使用StringBuffer/StringBuilder -
StringBuffer/StringBuilder区别
StringBuilder类是一个可变的字符串,所有的方法与StringBuffer类完全一样
StringBuffer方法执行效率慢,安全性较高
StringBuilder方法执行效率高,安全性较低
Math类
Math类提供了大量用于数学运算的方法
Math类是final类,因此不能从Math类继承
Math类中的方法都是static方法,因此不必创建Math类的对象就可以直接使用该类的方法
Math类中的常用方法
| 方法 | 含义 |
|---|---|
| static int abs(int) | 返回参数的绝对值,返回值类型与参数类型相同 |
| static double abs(double) | 返回参数的绝对值 |
| static double ceil(double) | 返回大于所给参数的最小的整数值 |
| static double floor(double) | 返回不大于所给参数的最大的整数值 |
| static int max(int a,int b) | 返回两个int值中较大的一个 |
| static double max(double,double) | 返回两个double值中较大的一个 |
| static int min(int a,int b) | 返回两个int值中较小的一个 |
| static double min(double,double) | 返回两个double值中较小的一个 |
| static double random( ) | 返回在0.0~1.0之间的随机的double值 |
| static int round(double) | 返回同所给值最接近的整数,采用4舍5入法 |
| static double sin/cos/tan(double) | 返回给定的弧度值对应的三角函数值 |
| static double sqrt(double) | 返回所给值的平方根,若所给值为负数则返回NaN |

被折叠的 条评论
为什么被折叠?



