字符串常用方法
来源:互联网 发布:美国生活水平知乎 编辑:程序博客网 时间:2024/06/05 20:12
1、length() 字符串长度
2、charAt(int index); 返回对应索引的字符,返回char类型
3、getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) 截取多个字符
String s1 = "abcdefghijklmnopqrstuvwxyz";
char[] ch =new char[10];
s1.getChars(0, 9, ch, 1);
System.out.println(ch);//"abcdefghi"
4、getBytes() 替代getChars的一种方法
5、toCharArray() 将字符串转换为字符数组
6、equals和equalsIgnoreCase()
二者都是比较字符串是否相等,equals是比较字符串是否具有相同的字符和长度,区分大小写;而equalsIgnoreCase()不区分大小写
7、regionMatches()
2个构造方法:
regionMatches(int startIndex,String str2,intstr2StartIndex,int numChars)
regionMatches(boolean ignoreCase,int startIndex,String str2,intstr2StartIndex,int numChars)
第一个参数ignoreCase表示是否区分大小写,
String s1 = "abcd3efbbb";
String s2 = "abcd2efaaa";
boolean b=s2.regionMatches(true, 0, s1, 0, 4);
System.out.println(b);//输出:true
8、startsWith()和endsWith()
判断字符串是否以相应的字符串开始或结尾
9、equals和==
equals是指字符串对象中的字符相等,而==是指2个对象引用同一个实例:
String s1="nihao";
Strings2=newString("nihao");
System.out.println(s1.equals(s2));
System.out.println(s1==s2);
输出:
true
false
10、 compareto()
返回前后两个字符串的asc码差值:如果两个字符串首字母不同,则返回首字母的asc码差值,如果首字母相同,则继续比较下一个字符,返回不同字符的asc码差值,如果参与比较的字符串完全一样,字符串长度不一样,则返回字符串长度的差。
11、 indexOf()和lastIndexOf()
indexOf()查找字符或者子串第一次出现的地方。
lastIndexOf() 查找字符或者子串是后一次出现的地方。
12、 substring()
它有两种形式:
第一种是:String substring(int startIndex) //从开始位置截取到最后
第二种是:String substring(intstartIndex,int endIndex) //从开始位置截取到结束位置,不包括endindex位置的元素
13、 concat()
连接两个字符串
14、 replace()和replaceAll()
replace(oldChar, newChar)替换字符
replaceAll(regex,replacement)替换字符串
replaceFirst()只替换第一次出现的字符串
二者比较:
replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换。
replaceAll的参数是regex,即基于规则表达式的替换,比如:可以通过replaceAll("\\d","*")把一个字符串所有的数字字符都换成星号;
相同点:都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串;
不同点:replaceAll支持正则表达式,因此会对参数进行解析(两个参数均是),如replaceAll("\\d", "*"),而replace则不会,replace("\\d","*")就是替换"\\d"的字符串,而不会解析为正则。
另外还有一个不同点:“\”在Java中是一个转义字符,所以需要用两个代表一个。例如System.out.println( "\\") ;只打印出一个"\"。但是“\”也是正则表达式中的转义字符,需要用两个代表一个。所以:\\\\被java转换成\\,\\又被正则表达式转换成\,因此用replaceAll替换“\”为"\\",就要用replaceAll("\\\\","\\\\\\\\"),而replace则replace("\\","\\\\")。
如果只想替换第一次出现的,可以使用replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的是,只替换第一次出现的字符串。
用例:
a、 将多个空格替换为一个
String s = "aa d f ff g ";
//“ +”是正则表达式,匹配一个或多个空格
System.out.println(s.replaceAll(" +"," "));
//replace只能把“ +”作为字符串处理,不能作为正则表达式
System.out.println(s.replace(" +",""));
15、 valueOf()转换为字符串
String. valueOf() 将不同类型的值,转换为字符串,返回类型为String
16、 trim() 去掉两边的空格
17、 toLowerCase() 转换为小写,toUpperCase() 转换为大写
18、 contains(CharSequences)
判读字符串内是否包含字符序列:
String s1="heAlo world";
System.out.println(s1.contains("ld"));- NSString字符串常用方法
- NSString字符串常用方法
- NSString字符串常用方法
- NSString字符串常用方法
- C# 字符串常用方法
- NSString字符串常用方法
- js常用字符串方法
- 字符串常用方法
- 常用字符串方法
- OC 字符串常用方法
- 字符串常用方法
- Java字符串常用方法
- IOS 字符串常用方法
- java字符串常用方法
- js字符串常用方法
- PHP字符串常用方法
- java_API_常用字符串方法
- c#字符串常用方法
- bugku Reverse Easy_vb wirteup
- hibernate查询结果映射到实体和map的方法
- 原型模式(Prototype)(创建型模式)
- Jquery.flotX轴日期对应不上
- gitclone 报错端口链接不上
- 字符串常用方法
- 初识C++
- SM4 CBC模式加密的C语言实现
- 浅谈软件测试
- angular2报错记录-routerLink
- linux回到上次目录与历史命令查找快捷方式
- 暑期培训安排
- LSMW批处理使用方法(12)_步骤16、17
- 聪聪可可(点分治)