字符串就是由字符数组所组成,所以在String类里面提供了与字符有关的操作方法。文章提供了常用类的汇总(返回类型、函数参数、功能等),方便查找。
想要看权威的类方法使用,推荐官方文档。这个是Java String类Oracle的官方文档: http://docs.oracle.com/javase/7/docs/api/java/lang/String.html
这个是网易云课堂上李兴华的Java视频,String类讲解,个人觉得讲的比较好,所放在这里:http://study.163.com/course/courseLearn.htm?courseId=943007#/learn/video?lessonId=1119041&courseId=943007
字符串与字符数组
方法名称 | 类型 | 说明 |
---|
public String(char[] value) | 构造 | 将制定字符数组变为字符串 |
public String(char[] value,int offset,int count) | 构造 | 将指定范围的字符数组变为字符串 |
public char charAt(int index) | 普通 | 取得字符串中指定索引位置的一个字符 |
public char toCharArray() | 普通 | 将字符串转化为字符数组 |
字符串与字节
方法名称 | 类型 | 说明 |
---|
public String(byte[] bytes) | 构造 | 将字节数组变为字符串 |
public String(byte[] bytes,int offset,int length) | 构造 | 将指定范围的字节数组变为字符串 |
public byte[] getBytes() | 普通 | 将字符串变为字节数组 |
public byte[] getBytes(String charsetName) throws UNsupportEncodingException | 普通 | 编码转化 |
之后IO编程会用到此类方法。
字符串比较
方法名称 | 类型 | 说明 |
---|
public boolean equals(String anObject) | 普通 | 判断两个字符串是否相等 |
public boolean equalsIgnoreCase(String anObject) | 普通 | 判断两个字符串是否相等,不区分大小写 |
public int compareTo(String anObject) | 普通 | 比较两个字符串大小,返回数值为第一个不想的字符的差值 |
字符串查找
方法名称 | 类型 | 说明 |
---|
public boolean contains(String s) | 普通 | 判断字符串是否存在 |
public int indexOf(String s) | 普通 | 从头查找指定字符串位置,如果找到返回位置索引,否则返回-1 |
public int indexOf(String s,int fromIndex) | 普通 | 从指定位置由前向后查找指定字符串位置,如果找到返回位置索引,否则返回-1 |
public int lastindexOf(String s) | 普通 | 由后向前查找指定字符串位置,如果找到返回位置索引,否则返回-1 |
public int lastindexOf(String s,int fromIndex) | 普通 | 从指定位置由后向前查找指定字符串位置,如果找到返回位置索引,否则返回-1 |
public boolean startsWith(String prefix) | 普通 | 判断是否由指定字符串开头 |
public boolean startsWith(String prefix,int tooffset) | 普通 | 从指定开始位置判断是否由指定字符串开头 |
public boolean endsWith(String prefix) | 普通 | 判断是否由指定字符串结尾 |
字符串替换
方法名称 | 类型 | 说明 |
---|
public String replaceAll(String regex,String replacement) | 普通 | 全替换 |
public String replaceFirst(String regex,String replacement) | 普通 | 替换首个 |
字符串拆分
方法名称 | 类型 | 说明 |
---|
public String[] split(String regex) | 普通 | 全拆分 |
public String[] split(String regex,in limit) | 普通 | 拆分部分 |
有可能涉及拆不开的情况,是正则表达式的原因,此时可以加上“\”,使得字符变为转义字符,然后再进行拆分。
例如:IP地址的拆分,split(“.”) —> split(“\.”)
字符串截取
方法名称 | 类型 | 说明 |
---|
public String substring(int beginIndex) | 普通 | 由索引位置截取到结尾 |
public String substring(int beginIndex,int enIndex) | 普通 | 设置开始和结束索引进行截取 |
其他方法
方法名称 | 类型 | 说明 |
---|
public String concat(String str) | 普通 | 字符串链接(一般用 “+” ) |
public String intern() | 普通 | 入池 |
public boolean isEmpty() | 普通 | 判断是否是空字符串(“”) |
public int length() | 普通 | 取得字符串长度 |
public String toLowerCase() | 普通 | 转小写 |
public String toUpperCase() | 普通 | 转大写 |
public String trim() | 普通 | 去掉字符串左右空格 |
Java String类缺少一个initcap()函数,首字母大写,其他小写,这里需要自己来写:
public class StringDemo{
public static void main(String args[]){
String msg = "name";
System.out.println("输出为:"+initcap(msg));
}
public static String initcap(String str){
return str.substring(0,1).toUpperCase().concat(str.substring(1).toLowerCase);
}
}