String字符串类—3 常用方法
转换功能 替换功能 其他
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
1. String类的转换功能
(1). 将字符串转换成字符数组
[1]. 实现方式I:非静态方法 ----String的构造方法
{1}. String(char value[])
{2}. String(char value[], int offset, int count)
将字符数组的一部分转换为字符串
[2]. 实现方式II.1:静态方法---- String的copyValueOf
{1}. static String copyValueOf(char data[])
{2}. static String copyValueOf(char data[], int offset, int count)
[3]. 实现方式II.2:静态方法 ----String的valueOf
{1}. static String valueOf(char data[])
{2}. static String valueOf(char data[], int offset, int count)
【总结1】
{1}. valueOf()有多种重载形式,不仅可以操作字符数组,也可以操作基本数据类型
{2}. copyValueOf()有两种重载形式,仅仅可以操作字符数组
【总结2】
当把字符数组转化为字符串的时候:valueOf()<=====>copyValueOf()
(2). 将字符数组转换成字符串【逆过程】
实现方式:char[]toCharArray()
(3). 将字节数组转换成字符串
实现方式:非静态方法 ----String的构造方法
{1}. String(byte value[])
{2}. String(byte value[], int offset, int count)
(4). 将字符串转换成字节数组
[1]. 实现方式:非静态方法 ----String的getBytes()方法
[2]. 注意:getBytes()方法可以接受字符编码。
所以,在使用getBytes()方法的过程中,可以指定字符编码**
(5). 将基本数据类型转换成字符串
[1]. 实现方式I:静态方法 ----String的valueOf()方法
static String valueOf(基本数据类型)
[2]. 实现方式II:操作符方式 ----“+”和“”拼接 -----简便方法
基本数据类型数据+""<====> String.valueOf(基本数据类型数据)
(6). 将字符串转换成对应大写或者小写字符串
[1]. String toUpperCase() ---->转成大写字符串
[2]. String toLowerCase() ---->转成小写字符串
(7). 将字符串两端空格去掉
实现方式:String trim()
2. String类的替换功能
(1). String replace (char oldChar,char newChar)
****字符替换字符****
[1]. 将字符串中的oldChar表示的字符全部替换成newChar表示的字符
[2]. 注意:由于字符串一旦被初始化,值就不能被改变,所以replace返回的是值为新的字符串在常量池的地址的String类引用,而不是返回void。
e.g.
[3].如果替换的字符不存在:此时返回原字符串
e.g.此时两个引用指向常量池中的同一个常量池中的字符串
(2). Stringreplace (CharSequence target, CharSequence replacement)
****字符子串替换字符子串****
(3). 其余替换功能都涉及到正则表达式,到正则表达式部分再介绍
3. 字符串的其他功能
(1). 自然顺序比较功能
[1]. 方法来源:实际上是实现Comparable接口中的方法compareTo()
[2]. 实现方式:intcompareTo(String anotherString)
[3]. 返回值不是boolean而是int类型的 ----->因为比较的结果有三种 >、<和=
比较规则:调用compareTo()的字符串做被减数,compareTo()方法的参数做减数。两者做差。结果就有>0、=0和<0
e.g.
String s1 ="abc";
String s2 ="dce";
System.out.println(s1.compareTo(s2));
分析:s1做被减数,s2做减数,s1-s2<0===> s1 <s2
(2). 分割功能
[1]. 实现方式:String[]split(String regex)
[2]. 参数可以是正则表达式,也可以是普通字符串
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------