JAVA基础10
API
- API:应用程序接口。帮助文档。
- java.lang 使用时不用导包。
导入架包
- 将jar文件复制到项目的包下
- 在jar包上右键,选择add to build path
Object类
object类是所有类的基类,包括数组都实现了该类的方法。该类的继承是隐藏继承 不写也继承。
重写toString()的快捷键 alt+shift+s->s
重写equals()的快捷键 alt+shift+s->h
常用方法:
getClass() 返回Object运行时类。
- 类是完全限定名:从src下开始的包的路径。
hashCode() 返回对象地址值的哈希算法转换的正数**。**
toString() 返回对象的字符串表示形式
格式:
getClass().getName()+’@’+Integer.toHexString(hashCode())
注意:
- 默认object类的toString方法,类的完全限定名[email protected]+十六进制的哈希码值
- 当时用System.out.print进行输出时,可以认为是先调用了toString方法,然后再进行输出,无论是否动手调用toString方法,结果都一样。
equals(Object obj) 判断对象是否相等,与==结果一样
equals和==区别
- equals方法,比较对象是否相等。Object的equals方法和==一样,但是可以重写equals方法获得想要的结果。
- == 用于基本数据类的比较,对于引用数据类型比较的是对象的地址值。
Scanner类
扫描器:
常用方法:
close关闭扫描器:
注意:关闭时会同时关闭System流 容易报NoSuchElementException异常
nextXXX()
String next()
int nextInt()
double nextDouble()
基本数据类型中除了char都可以进行转换。
nextLine与nextXXX()的区别:
- nextLine 返回一行字符串,但是不包括行分隔符。
- nextXXX()以行分隔符作为分隔的标记,默认为空格。如果接收的内容由空格 就是用nextLine来接收。
- 如果nextXXX()与nextLine连用,需要在nextLine前面再创建一个Scanner对象,保证nextLine方法不会提前结束。
String类
- String:字符串
- 任何字面值是""都是字符串实例。
- 字符串是常量,不能修改。
- 字符串的底层是一个字符数组。
- 字符串对象的创建
- 如果字符串对象在创建时,只是单纯的"",在方法区的字符串常量池中,首先查找有没有该字符 串,有就不创建,没有,才会创建。
- 如果字符串对象是通过new操作创建,先在堆中,创建对象,并且到方法区中的字符串常量池中查找 是否有参数相同的字符序列,没有,在字符串常量池中创建出一个字符串常量,然后返回字符串常量的地址 值,有就直接使用
构造方法
- 构造方法:
- new String(str)
- String() 创建一个空字符序列。
- null 空值
- “” 空串
- String(byte[] bytes) 通过默认的编码方式,字节数组转换字符串。
- 如果有第二个参数,表示编码。
- String(char[] value) 将字符数组转换成字符串。
- 如果有第二个参数 offset表示从那个位置开始转换,第三个参数count 表示截取的子数组的长度。
字符串常用方法
常用方法:
charAt(int index) 返回index位置的字符值。
compareTo(String anotherString)/compareToIgnoreCase(String str)表示忽略大小写。
比较字符串大小 返回int类型的值。
注意:
比较结果 分 0 正数 负数
0表示相等 负数表示对象再参数字符串之前 正数表示对象在参数字符串之后
比较的两种方式:
如果字符序列不同,比较通过对象-参数字符串的unicode码值的形式进 行运算。
如果字符串序列相同,只是长度问题,比较通过对象长度-参数字符串的长度进行运算。
contains(CharSequence s) 判断是否包含。
.endsWith(String suffix) /startsWith(String prefix) 以xx作为后缀 /以xx作为前 缀。
equals(Object anObject) /equalsIgnoreCase(String anotherString) 忽略大小 写。(判断字符串是否相等,只要字符串序列相同,返回true。)
getBytes() /getBytes(Charset charset) 将字符串转换成字节数组。
indexOf 查找参数字符串在对象中的第一次出现的索引位置,如果找不到就返回-1。
- indexOf(String str) /indexOf(String str, int fromIndex) 返回参数字符串在对象中第一次出现的索引位置。/从formindex位置开始。
- lastIndexOf(String str) /lastIndexOf(String str, int fromIndex) 返回参数字符串在对象中最后一次出现的索引位置。
length() 相当于数组中的length,表示字符串的字符数,长度。
注意: 字符串的length是一个方法,而数组的length属性。
replace(CharSequence target, CharSequence replacement) 替换所有 , 用新的字符串替 换老的字符串。(第一个是被替换的内容,第二个是替换的内容)
split(String regex) 按照参数拆分字符串,转换成字符串数组。
.substring(int beginIndex) /substring(int beginIndex, int endIndex)。
截子串 :
注意:
如果只有一个参数,表示从指定位置开始截取,直到末尾。
如果有两个参数,表示从指定位置开始截取,截到
endIndex-1的位置。toCharArray() 将字符串转换成字符数组。
valueOf(Object obj) 将任意对象转换成字符串。
Math类
- Math:与数学有关的运算。
- 常用属性
- PI:圆周率
- 常用方法:
- ceil(double) 向上取整,转换成double类型。
- floor(double) 向下取整,转换成double类型。
- round(double) 四舍五入,转换成long类型。
- pow(double a,double b) 表示第一个参数的第二个参数次幂,返回值是double类型
- random() 返回[0.0,1.0)之间的double类型的值。
System类
标准输入输出流:
- err 标准错误输出流
- out 标准输出流
- in 标准输入流
常用方法:
arraycopy(Object src,int srcPos,Object dest,int desPos,int len)快速复制数组。
src被复制的数组 srcPos从哪个位置开始进行复制 dest 要进行复制的目标数组。 destPos 从该数组的哪个位置开始存放。 length 表示复制的长度。
currentTimeMillis() 返回以毫秒值为单位的当前时间,返回值是long类型
注意:计算机元年是1970年1月1日0时0分0秒
exit(0) 退出JVM 0表示正常退出
要进行复制的目标数组。 destPos 从该数组的哪个位置开始存放。 length 表示复制的长度。
currentTimeMillis() 返回以毫秒值为单位的当前时间,返回值是long类型
注意:计算机元年是1970年1月1日0时0分0秒
exit(0) 退出JVM 0表示正常退出
gc() 表示垃圾回收的方法。