代码块&&API(object、String、StringBuffer、StringBuilder)
day 07
代码块
-
局部代码块
-
定义在方法中,用户划分区域的
-
构造代码块
- 和成员方法并列,用{}包裹
-
每次创建对象的时候都会执行,优先于构造方法
-
静态代码块
- 构造代码块前面用static声明
-
在同类下,它优先于主方法执行、优先于构造代码块执行,当以任意形式第一次使用到该类时执行。
-
该类不管创建多少对象,静态代码块只执行一次。
-
可用于给静态变量赋值,用来给类进行初始化。
API
Application Programming Interface
-
object
- 五大常用包:lang、util、sql、io、net
- lang包下的类不需要导包
- 常用方法:
- public boolean equals(Object obj) :
- 功能:判断两个对象的地址值是否相等。
- 注意:重写该方法,通常需要覆盖
hashCode
方法,以便维护hashCode
方法的通用合同,该方法规定相等的对象必须具有相等的哈希码。 - public String toString() :
-
getClass().getName() + '@' + Integer.toHexString(hashCode()); //全限定类名的字符串@ ”和对象的哈希码的无符号的十六进制表示
-
-
String
- 构造方法(简):
- String() :初始化新创建的 String对象,使其表示空字符序列。
- char:不能创建空字符对象。
- String(byte[] bytes) :通过使用平台的默认字符集解码指定的字节数组来构造新的
String
。- 常用ASCII:
- ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)
- 32~126(共95个)是字符(32是空格)
- 48~57为0到9十个阿拉伯数字。
- 65~90为26个大写英文字母。
- 97~122号为26个小写英文字母。
- 其余为一些标点符号、运算符号等。
- 常用ASCII:
- APi
-
boolean equals(Object obj) 判断两个字符串中 的内容是否相同 boolean equalsIgnoreCase(String str) 判断两个字符串中的内容是否相同, 忽略大小写 boolean contains(String str) 判断该字符串中是否包含给定的字符串 boolean startsWith(String str) 判断该字符串是否以给定的字符串开头 boolean endsWith(String str) 判断该字符串是否以给定的字符串结尾 boolean isEmpty() 判断该字符串的内容是否为空的字符串 int length() 获取该字符串的长度 char charAt(int index) 获取该字符串中指定位置上的字符 String substring(int start) 从指定位置开始,到末尾结束,截取该字符串,返回新字符串 String substring(int start,int end) 从指定 位置开始,到指定位置结束,截取该字符串,返回新字符串 int indexOf(int ch ) 获取给定的字符,在该字符串中第一次出现的位置 int indexOf(String str) 获取给定的字符串,在该字符串中第一次出现的位置 int indexOf(int ch,int fromIndex) 从指定位 置开始,获取给定的字符 byte[] getBytes() 把该字符串 转换成字节数组 char[] toCharArray() 把该字符串 转换成字符数组 String replace(char old,char new) 在该字符 串中,将给定的旧字符,用新字符替换 String replace(String old,String new) 在 该字符串中, 将给定的旧字符串,用新字符串替换 String trim() 去除字符串两端空格,中间的不会去 除,返回一个新字符串 String toLowerCase() 把该字符串转换成 小写字符串 String toUpperCase() 把该字符串转换成 大写字符串 int indexOf(String str,int fromIndex) 从 指定位置开始,获取给定的字符串,在该字符串中第一 次出现的位置
-
- 构造方法(简):
-
StringBuffer
- 又称为字符串缓冲区,是一个容器,里面存放了很多字符,是一个线程安全,可变的字符序列
- 构造方法:
- StringBuffer() :初始容量为16个字符,参数可以为字符串或定义容量的整型或者字符数组
- API:
- 添加:append();
- 插入:insert(int start, String str);
- 替换:raplace(int start, int end, String str);
- 删除:delete(int start, int end);
-
StringBuilder
-
与 StringBuffer 兼容的 API,但是属于线程不安全的,所以效率较高,推荐使用
-