String类方法的理解
String类
String字符串是一个常量 已经初始化后不能被修改
String s = "";
String s = new String("");
==双等比较对象的内存地址
equsls Object类中定义的方法 默认比较内存地址 String类中重写该方法 比较的是具体字符串的内容
String类中的常用方法
获取
//获取字符串的字符个数
int length()//返回此字符串的长度.
//根据下标位置 获取对应下标的字符
char charAt(int index)//返回指定索引处的char值.
//通过字符串获取下标位置(不存在返回-1)
int indexOf(int ch)//返回参数指定字符在此字符串中第一次出现的索引
int indexOf(int ch,int fromIndex)//返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索.
int indexOf(String str)//返回指定字符串在此字符串中第一次出现处的索引.
int indexOf(String str,int fromIndex)//返回指定字符串在此字符串中第一次出现的索引,从指定的索引开始.
int lastIndexOf(int ch)//返回指定字符在此字符串中最后一次出现处的索引, 从指定的索引处开始进行反向搜索.
int lastIndexOf(int ch,int fromIndex)//返回指定字符在此字符串中最后一次出现处的索引,从指定的索引处开始进行反向搜索.
int lastIndexOf(String str)//返回指定字符串在此字符串中最右边出现处的索引.
int lastIndexOf(String str,int fromIndex)//犯规指定字符串在此字符中最后一次出现的索引,从指定的所有开始反向搜索.
//截取字符串中的一部分
String substring(int beginIndex)//返回一个新的字符串,它是此字符串的一个子字符串.
String substring(int beginIndex,int endIndex)//返回一个新字符串,他是此字符串的一个子字符串. 原则: 顾前不顾后
判断
//判断两个字符串是否相同 注意:严格区分大小写
boolean equals(Object anObject)//将此字符串与指定的对象比较.
//判断两个字符串时候相同 忽略大小写
boolean equslsIgnoreCase(String anotherString)//将此Sting与另一个String比较, 不考虑大小写.
//测试此字符串是否以指定的前缀开始.
boolean startsWith(String prefix)
//测试此字符串是否以指定的后缀结束.
boolean endsWith(String suffix)
//当且仅当此字符串包含指定的char 值序列时,返回true.
boolean contains(CharSequence s)
//当且仅当length()为0 时返回true.
boolean isEmpty()
转换
char[] toCharArray()//将此字符串转换为一个新的字符数组.
byte[] getBytes() GBK utf-8 编码//使用平台的默认字符集将此String 编码为byte 序列,并将结果存储到一个新的byte数组中.
String[] split(String regex) //根据给定正则表达式的匹配拆分此字符串
//将字符数组转换成字符串
String(char[] value)//分配一个新的 String,使其表示字符数组参数中当前包含的字符序列
String(char[] value,int offset,int count)//分配一个新的String,它包含字符串数组参数一个子数组的字符.
static String copyValueOf(char[] data)//返回指定数组中表示该字符序列的String.
static String copyValueOf(char[] data,int offset, int count)//返回指定数组中表示该字符序列的String.
static String valueOf(char[] data)//返回char 数组参数的字符串表示形式.
static String valueOf(char[] data,int offset,int count)//返回char 数组参数的特点子数组的字符串表示形式.
//将字节数组转换成字符串 解码
String(byte[] bytes)//通过视屏平台的默认字符集解码指定的byte数组,构造一个新的String.
String(byte[] bytes,int offset,int length)//通过使用平台的默认字符集解码指定的byte 子数组, 构造一个新的String
//转换大小写
String toLowerCase()//使用默认语言环境的规则将此String 中的所有字符都转换为小写.
String toUpperCase()//使用默认语言环境的规则将此String 中的所有字符都转换为大写.
替换
String replace(char oldChar,char newChar)//返回一个新的字符串,他是通过newChar 替换此字符串中出现的所有oldChar 得到的.
String replace(CharSequence target,CharSequence replacement)//使用指定的字面值替换此字符串所有匹配字面值目标序列的子字符串.
去除前后空格
String trim()//返回字符串的副本,忽略前导空白和尾部空白.