面试的时候,常常会有一道算法题,而测试而言这道算法题往往是字符串处理,所以掌握字符串处理常用的方法就十分必要了

 

一、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():分割字符串,返回分割后的字符串数组;

java 长字符串转短字符串 java将很长的字符串变短_Java

//判断字符串是否为纯数字

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