1.将基本类型转成字符串类型
1.String.valueOf(基本类型):返回值是String类型
2.数字字符串转成基本类型的数值
语法:基本类型的包装类.parse基本类型(String str)
返回为对应的基本类型数值
3.StringBuilder和StringBuffer
都是可变的字符序列,都可以动态的对字符串进行修改
区别:
StringBuffer:线程安全,效率低,并发处理
StringBuilder: 线程不安全,效率高,同步处理
两者的用法都是一致的;
常用的方法:
追加:(append())
System.out.println(sbr.append("qwerzxcdf"));//加入字符串
删除:(delete())
System.out.println(sbr.delete(2, 4));//参数的范围是左包括右不包括
替换:(replace())
System.out.println(sbr.replace(0, 4, "love"));// 在一定范围内替换
插入:(insert())
System.out.println(sbr.insert(4, "shiqi"));// 某个下标值的后面添加指定类型的字符串
反转:(reverse())
System.out.println(sbr.reverse());//反向生成字符序列
例:
StringBuffer sbr=new StringBuffer();// 这是创建一个空的字符序列
这些方法封装时返回值为该引用类型对象的好处:
因为字符串需要频繁的修改,使用创建多个变量的方式来接受
处理后的字符串比较繁琐,不利于操作,所以修改的是字符串的返回该类型对象,
这样便于在原有的可变字符序列的对象上多次修改
4.正则表达式:
一般用于字符串的格式验证
matches(String regex) ---全部匹配
将字符串与正则表达式(regex)进行比较
如果格式满足regex,则返回值为true;否则返回值为false
正则表达式 说明
[abc] a,b,c中任意一个字符
[^abc] 除了a,b,c中任意字符
[a-z] abc...z中任意字符
[a-zA-Z0-9] a-z,A-Z,0-9中任意字符
[a-z&&[^bc]] a-z中除了b和c以外任意字符,其中&&表示“与”关系
. 任意一个字符
\d 任意一个数字字符,相当于[0-9]
\w 单词字符,相当于[a-zA-z0-9_]
\s 空白字符,相当于[\t\n\x0B...]
\D 非数字字符
\W 非单词字符
\S 非空白字符
X:表示字符(单个或多个)
X? 可以有0个或1个X
X* 有0个或任意多个X
X+ 大于等于1个X
X{n} 表示n个X
X{n,} n到任意多个X(大于等于n)
X{n,m} n到m个X
5.关于正则的方法:
split(String regex)
按照指定的正则表达式分割数组
返回值为字符串数组
String str1="java234php23python78vb56c++03.net";
String regex1="\\d+"; //\\d{1,5}
String[] arr1=str1.split(regex1);
System.out.println(Arrays.toString(arr1));
replaceAll(String regex,String str)
以正则表达式,将字符串中的regex格式的字符替换成str
String str="sasdfsdf534fgwe564564er";
String regex="[a-z]+";
String s=str.replaceAll(regex,"");
System.out.println(s);
6.关于正则表达式的边界问题:
^:以某某字符开头
$:以某某字符结尾
Java中是默认全部匹配