1.String类常用方法
1.1字符串的构造
使用常量字符串构造

直接使用newString对象

使用字符数组进行构造

注意:
1.String是引用类型,内部并不存储字符串本身


2.在Java中用""引起来的也是String类型对象。
1.2 String对象的比较
1. ==比较是否引用同一个对象
注意:对于内置类型,==比较的是变量中的值;对于引用类型==比较的是引用中的地址。

2.boolean equals(Object anObject)方法:按照字典序比较
字典序:字符的大小的顺序。
String类重写了父类Object中equals方法,Object中equals默认按照==比较,String重写equals方法后,按照 如下规则进行比较,比如: s1.equals(s2)。

3.int compareTo(String s) 方法: 按照字典序进行比较

4.int compareToIgnoreCase(String str) 方法:与compareTo方式相同,但是忽略大小写比较

1.3 字符串查找



1.4转化
1. 数值和字符串转化

2. 大小写转换


3. 字符串转数组


4. 格式化


1.5字符串的替换



注意:由于字符串是不可变对象, 替换不修改当前字符串, 而是产生一个新的字符串。
1.6 字符串拆分
可以将一个完整的字符串按照指定的分隔符划分为若干个子字符串。
代码示例: 实现字符串的拆分处理。


代码示例: 字符串的部分拆分


拆分是特别常用的操作, 一定要重点掌握.,另外有些特殊字符作为分割符可能无法正确切分, 需要加上转义。
代码示例: 拆分IP地址

注意事项:
1. 字符"|","*","+"都得加上转义字符,前面加上 "\\" 。
2. 而如果是 "\" ,那么就得写成 "\\\\" 。
3. 如果一个字符串中有多个分隔符,可以用"|"作为连字符。
代码示例: 多次拆分


1.7 字符串截取


1.8 其他操作方法

代码示例:观察trim()方法的使用


trim会去掉字符串开头和结尾的空白字符(空格,换行,制表符等)。
代码示例:大小写转换


这两个函数只转换字母。
1.9字符串的不可变性
String是一种不可变对象,字符串中的内容是不可改变的。
String类中的字符实际保存在内部维护的value字符数字中。
1.String类被final修饰,表明该类不能被继承。
2.value被final修饰,表明value自身的值不能改变,即不能引用其他字符数组,但是其引用空间中的内容可以改变。
1.10字符串修改
注意:尽量避免直接对String类型对象进行修改,因为String类是不能修改的,所有修改都会创建新对象,效率非常低下。


这种方式不推荐使用,因为其效率非常低下,中间创建了好多临时对象。
解释:
1.创建一个StringBuilder的对象,假设为temp。
2.将s对象append(追加)temp之后。
2.将"world"字符串append(追加)在temp之后。
4.temp调用其toString方法构造一个新的String对象。

5.将新String对象的引用赋值给s。
2.StringBuilder和StringBuffer


从上述例子可以看出:String和StringBuilder最大的区别在于String的内容无法修改,而StringBuilder的内容可以修改。
注意:String和StringBuilder类不能直接转换。如果要想互相转换,可以采用如下原则:
String变为StringBuilder: 利用StringBuilder的构造方法或append()方法。
StringBuilder变为String: 调用toString()方法。

1099

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



