知识总是学着学着就混淆了,所以要定期进行总结与归纳区分。温故而知新嘛!!
substring方法
语法:String str = s.substring(int beginIndex, int endIndex)
- 取得的字符串长度为endIndex - beginIndex;(不包括endIndex位置的字符)
- beginIndex:对应String数字中的开始位置的索引
- endIndex:结束位置的索引
语法:String str = s.substring(int Index);//截取从index开始到最后一个字符串
- 不接受负的参数
String split("字符")
- 根据给定的正则表达式的匹配来拆分此字符串。形成一个新的String数组。
string s = "zhu,zhan,jun";
string[] arr = s.Split(','); //把字符串中的以某一个符号或字符分成若干个子串,并放到数组中。
//输出
arr[0]= "zhu";
arr[1] ="zhan";
arr[2] ="jun";
String valueOf(char data[],int offset,int count):基本类型转换为字符串类型
trim():掉字符串左右空格
replace(char oldChar,char newChar);新字符替换旧字符,也可以达到去空格的效果一种。
startsWith(String):测试此字符串是否以指定的前缀开始。返回一个布尔值
endsWith(String):测试此字符串是否以指定的后缀开始。返回一个布尔值
charAt(number)
- 语法 :char c = 字符串名.charAt(int number);
- 返回值为 char 类型。从字符串中取出指定位置的字符
toCharArray();
- 语法 : char[] s = 字符串名.toCharArray();
- 返回值为 char 数组类型。将字符串变成一个字符数组
indexOf("string")
- 语法 :int a = 字符串名.indexOf("字符");
- 字符串名.indexOf("字符",number):从number个开始查找
- 查找一个指定的字符串是否存在,返回的是字符串的位置,如果不存在,则返回-1 。
相关小贴士
String、StringBuffer、StringBuilder的区别
JS的slice()、substring()、substr() 、splice()区别
定义
slice():可提取字符串的某个部分,并以新的字符串返回被提取的部分。
substring():提取字符串中介于两个指定下标之间的字符,和Java类似。
- slice() 比 substring() 要灵活一些,因为它允许使用负数作为参数。slice() 与 substr() 有所不同,因为它用两个字符的位置来指定子串,而 substr() 则用字符位置和长度来指定子串。
- substr()的第二个参数指定的是返回的字符串个数
- splice()方法是用于插入、删除或者替换数组的元素。即原数组不会改变。
- substring和substr相同:都是返回副本,而不在原字符串上直接操作
- substring和substr不同:substr第二个参数表示截取几个字符并且参数能为
var str = '0123456789';
console.log( str.substring(2, 5) ); // 234。区间为[2, 5)
console.log( str.substr(2, 5) ); // 23456。区间为[2, 2+5-1]
slice
和 splice
的相同:都是针对数组且均能接受负数,字符串也能用slice,slice返回副本、但splice是直接在数组上操作(直接在数组上操作的还有 pop/push/shift/unshift/sort/reverse/concat
)
装X大法:Array.prototype.slice.call(arguments);//将伪数组转化成数组
//如果不传入参数二,那么将从参数一的索引位置开始截取,一直到数组尾
var a=[1,2,3,4,5,6];
var b=a.slice(0,3); //[1,2,3]
var c=a.slice(3); //[4,5,6]
//如果两个参数中的任何一个是负数,array.length会和它们相加,试图让它们成为非负数,举例说明:
//当只传入一个参数,且是负数时,length会与参数相加,然后再截取
var a=[1,2,3,4,5,6];
var b=a.slice(-1); //[6]
//当只传入一个参数,是负数时,并且参数的绝对值大于数组length时,会截取整个数组
var a=[1,2,3,4,5,6];
var b=a.slice(-6); //[1,2,3,4,5,6]
var c=a.slice(-8); //[1,2,3,4,5,6]
//当传入两个参数一正一负时,length也会先于负数相加后,再截取
var a=[1,2,3,4,5,6];
var b=a.slice(2,-3); //[3]
//当传入一个参数,大于length时,将返回一个空数组
var a=[1,2,3,4,5,6];
var b=a.slice(6); //[]