java核心API

---恢复内容开始---

Javase01

day01

关于String:

String是不可变对象,java.lang.String使用了final修饰,不能被继承;

字符串一旦创建永远无法改变,但是指向该字符串的引用可以改变;

Java为了提高性能,静态字符串(字面量/常量/常量连接的结果)在常量池中创建,并尽量使用同一个对象,重用静态字符串;

对于重复出现的字符串直接量,JVM首先会从常量池中查找,如果存在即返回该对象。

String在内存中采用Unicode编码,每个字符占有两个字节(任何字符);

 StringBuilder:定义了可变字符串

追加字符 append(str);

插入字符 insert(i,str);

删除字符 delete(start,end);

替换字符 replace(start,end,str);

字符串反转 reverse();

indexOf方法

用于实现在字符串中检索另一个字符串

几个重载的indexOf方法:

   * int(指返回类型) indexOf(str):根据字符串检索下标,
   *      即查找str在字符串中的下标,并返回;若查找不到,返回-1
   *
   * int indexOf(str i):查找字符串中str,并且从第i个开始查找;若查找不到,返回-1
   *
   * int lastIndexOf(str):查找str在字符串中最后一次出现的位置

 * trim():去掉字符串两边的空白

charAt(int i);:返回字符串i位置的字符

startsWith()与endsWith():检测一个字符串是否以指定字符开头或者结尾。

valueOf():将字符串转换为其他类型

 substring方法用于返回一个字符串的子字符串

常用重载方法:

   *( String) substring(int 1,int 2):截取子字符串,从i1开始,到i2结束
   *         含头不含尾
   *
   *( String substring)(int 1):只有一个参数,默认截取到末尾。

day02

正则表达式:判断字符串是否满足正则表达式的要求。

String reg01="[abc]";//任意a,b,c中的一个
String reg02="[1,2,3]";//任意1,2,3中的一个
String reg03="[^ace]";//任意非a,c,e中的一个
String reg04="[a-z]";//任意的一个英语小写字母
String reg05="[0-9]";//任意的一个数字
String reg06="[A-Za-z0-9]";//任意的一个A-Z或a-z或0-9之间的一个

str.matches(reg);判断字符串str是否满足正则表达式reg的要求.

 . :任意一个字符
 d:等价于[0-9]
 w:等价于[0-9a-zA-Z_]
 s:等价于空白字符
 ?:0/1个
 * :任意个
 + :至少一个
 
{n}:表示有n个
{n,}:表示至少有n个
{n,m}:表示至少n个,最多m个

String [] split(String regex):将字符串分割成字符串数组(regex表示正则表达式,以其表达的字符串为分割符,将字符串拆分成字符串数组)

replaceAll(String regex,String replacement)将字符串中匹配正则表达式regex的字符串替换成replacement

若一个类没有继承任何父类,默认继承Object
toString():返回用来描述对象的信息

str1.equals(str2)方法:比较字符串str1与字符串st2对象的字符序列是否相等。

equals与“==”的区别:

==用于比较变量的值,可以用于任何类型,如果用于引用类型,比较的是两个引用变量中存储的值(地址信息),判断两个变量是否指向相同的对象。

equals是Object方法,重写以后可以用来  比较两个对象的内容是否“相等”。

需要注意的是,Object默认的equals方法的比较规则同==。

原文地址:https://www.cnblogs.com/cgwjava/p/11385716.html