面试的时候,常常会有一道算法题,而测试而言这道算法题往往是字符串处理,所以掌握字符串处理常用的方法就十分必要了
一、String的用法
字符串是常量,它们的值在创建后不能被更改。
由于String类的对象内容不可改变,所以每当进行字符串拼接时,总是会在内存中创建一个新的对象。
//java中String是只读的,没有办法进行变换,因此需要使用StringBuilder。
String.length()
//获取字符串的长度
String.charAt(i)
//获取第i个字符的内容
String.subString(start)
//获取[start,)的字符串
String.subString(start,end)
//获取[start,end)中的字符串
char
[] c = iniString.toCharArray()
//将字符串转为char数组来进行改变字符内容
String.equal()
//判断两个字符串是否相等
int location = String.indexof(str); //查询指定的字符串是否存在,返回的是字符串的位置,不存在返回-1;
split():分割字符串,返回分割后的字符串数组;
//判断字符串是否为纯数字
public static boolean isNumericzidai(String str) {
for (int i = 0; i < str.length(); i++) {
System.out.println(str.charAt(i));
if (!Character.isDigit(str.charAt(i))) {
return false;
}
}
return true;
}
二、StringBuilder
1.常用构造函数
public StringBuilder() :构造一个空的StringBuilder容器。
public StringBuilder(String str) :构造一个StringBuilder容器,并将字符串添加进去
2.常用方法
public StringBuilder append(...) :添加任意类型数据的字符串形式,并返回当前对象自身。
public String toString() :将当前StringBuilder对象转换为String对象
除了String中支持的方法外,StringBuilder支持字符的增、删、改。
stringBuilder.append(
"we"
);
//添加we在词尾
stringBuilder.insert(
0
,
"we"
);
//在0的位置加入后面的内容
stringBuilder.delete(
0
,
1
);
//删除[0,1)的数据
stringBuilder.deleteCharAt(
0
);
stringBuilder.setCharAt(
0
,
'p'
);
//在某一个独特位置设置字符
char
c = stringBuilder.charAt(i);
//查询某个位置上的字符
System.out.println(stringBuilder);
new
String(stringBuilder);
//用stringBuilder来初始化String
三、Char
四、有序字典
LinkedHashMap