2020/7/10 java toString String类 StringBuffer类 正则表达式
Posted asgetharytmjxtyk,dxh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2020/7/10 java toString String类 StringBuffer类 正则表达式相关的知识,希望对你有一定的参考价值。
toString方法
toString方法返回该对象的字符串表示
由于toString方法返回的结果是内存地址,而在开发中,经常需要按照对象的属性得到相应的字符串表现形式,因此也需要重写它。
class Person extends Object{ int age ; //根据Person类的属性重写toString方法 public String toString() { return "Person [age=" + age + "]"; } }
1 String类
字符串的本质是一个字符的数组。
String s3 = "abc"; String s4 = new String("abc"); System.out.println(s3==s4);//false System.out.println(s3.equals(s4));//true, //因为String重写了equals方法,建立了字符串自己的判断相同的依据(通过字符串对象中的字符来判断)
l s3创建,在内存中只有一个对象。这个对象在字符串常量池中
l s4创建,在内存中有两个对象。一个new的对象在堆中,一个字符串本身对象,在字符串常量池中
1.1 String类构造方法
1.2 String类的成员方法
lentgh() 返回该字符串的长度 返回值 是int类型
substring(int 下标)返回下标后面的所有字符
substring(int 下标,int 下标)返回第一个下标以后第二个下标以前的字符 不包括第二个下标的字符
startsWith(String prefix)测试此字符串是否以特定的前缀开始 返回值是布尔值
endswith (String suffix) 测试此字符串是否以指定的后缀结束。返回值是布尔值
cont ains (CharSeguence s) 当且仅当此字符串包含指定的char值序列时,返回true。
indexOf (String str) 返回指定子字符串在此字符串中第一次出现处的索引。
getBytes() 使用平台的默认字符集将此String 编码为byte 序列,并将结果存储到一个新的byte 数组中。.
toCharArray() 将此字符串转换为- -个新的字符数组。
eguals (Object. an0bject) 将此字符串与指定的对象比较。
equalsIgnoreCase (String anotherString) 将此String与另一个String比较,不考虑大小写。
toString() 返回此对象本身(它已经是- -个字符串! )。
2 字符串缓冲区
2.1 StringBuffer类
字符串缓冲区支持可变的字符串
成员方法
append(String str) 将指定的字符串追加到此字符序列。
delete(int start, int end) 移除此序列的子字符串中的字符。
insert (int offset, String str) 将字符串插入此字符序列中。
replace (int start, int end, String str) 使用给定String中的字符替换此序列的子字符串中的字符。
reverse () 将此字符序列用其反转形式取代。
toString () 返回此序列中数据的字符串表示形式。
2.2 StringBuilder类
StringBuffer 是一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)。如果可能,建议优先采用该类,因为在大多数实现中,它比 StringBuffer 要快。
3 正则表达式
正则表达式是一个字符串,使用单个字符串来描述、用来定义匹配规则,匹配一系列符合某个句法规则的字符串。在开发中,正则表达式通常被用来检索、替换那些符合某个规则的文本
3.1 正则表达式的匹配规则
字符:x
含义:代表的是字符x
字符:\\\\
含义:代表的是反斜线字符\'\\\'
字符:\\t
含义:制表符
字符:\\n
含义:换行符
字符:\\r
含义:回车符
字符类:[abc]
含义:代表的是字符a、b 或 c
字符类:[^abc]
含义:代表的是除了 a、b 或 c以外的任何字符
字符类:[a-zA-Z]
含义:代表的是a 到 z 或 A 到 Z,两头的字母包括在内
字符类:[0-9]
含义:代表的是 0到9数字,两头的数字包括在内
字符类:[a-zA-Z_0-9]
含义:代表的字母或者数字或者下划线(即单词字符)
预定义字符类:.
含义:代表的是任何字符
预定义字符类:\\d
含义:代表的是 0到9数字,两头的数字包括在内,相当于[0-9]
预定义字符类:\\w
含义:代表的字母或者数字或者下划线(即单词字符),相当于[a-zA-Z_0-9]
数量词:X?
含义:代表的是X出现一次或一次也没有
数量词:X*
含义:代表的是X出现零次或多次
数量词:X+
含义:代表的是X出现一次或多次
数量词:X{n}
含义:代表的是X出现恰好 n 次
数量词:X{n,}
含义:代表的是X出现至少 n 次
数量词:X{n,m}
含义:代表的是X出现至少 n 次,但是不超过 m 次
3.2 字符串类中涉及正则表达式的常用方法
以上是关于2020/7/10 java toString String类 StringBuffer类 正则表达式的主要内容,如果未能解决你的问题,请参考以下文章
2020/7/10 JAVA常用Api之String类和字符串缓冲区正则表达式
Java:Effective java学习笔记之 始终要覆盖toString方法