1.字符串与字符
方法名称 类型 说明
public String(byte[] bytes) 构造 将全部的字符数组内容变为字符串
public String(byte[] bytes, int offset,int length) 构造 将部分字符数组变为字符串
public char charAt(int index) 普通 取得指定索引位置的字符
public char[] toCharArray() 普通 将字符串转换为字符数组
[范例]:验证charAt()方法
String str= "hello world";
char c = str.charAt(6);
System.out.println(c);
[范例]:字符串和字符数组转换,完成一个小写字符串变为大写字符串的操作
String str= "hello world";
char[] data = str.toCharArray();
for (int i = 0; i < data.length; i++) {
System.out.print(data[i]+" ");
data[i] -= 32;
}
System.out.println();
System.out.println("全部字符数组变为字符串"+new String(data));
System.out.println("部分字符数组变为字符串"+new String(data,0,5));
[思考题]:判断一个字符串是否为由数字组成
将字符串变为字符数组,而后依次判断字符数组中的每一个字符是否为数字
public class Test {
public static void main(String[] args) throws ParseException {
String str = "123";
System.out.println(Test.isNumber(str));
}
public static boolean isNumber(String temp){
char[] data = temp.toCharArray();
for (int i = 0; i < data.length; i++) {
if(data[i]<'0'||data[i]>'9'){
return false;
}
}
return true;
}
}
2.字符串与字节
方法名称 类型 说明
public String(byte[] bytes) 构造 将全部字节数组变为字符串
public String(byte[] bytes,int offset,int length) 构造 将部分字节数组变为字符串
public byte[] getBytes() 普通 将字符串变为字节数组
public byte[] getBytes(String charsetName) 普通 字符串转码
throws UnsupportedEncodingException
[范例]:小写字母变为大写字母
String str= "hello world";
byte[] data = str.getBytes();
for (int i = 0; i < data.length; i++) {
System.out.print(data[i]+" ");
data[i] -= 32;
}
System.out.println();
System.out.println("全部字节数组变为字符串"+new String(data));
System.out.println("部分字节数组变为字符串"+new String(data,0,5));
3.字符串比较
方法名称 类型 说明
public boolean equals(Object anObject) 普通 区分大小写的相等判断
public boolean equalsIgnoreCase(String anotherString) 普通 不区分大小写相等判断
public int compareTo(String anotherString) 普通 比较两个字符串的大小
[范例]比较大小写及相等
String str= "hello world";
String str1 ="HELLO WORLD";
System.out.println(str.compareTo(str1));
System.out.println(str.equals(str1));
System.out.println(str.equalsIgnoreCase(str1));
4.字符串查找
方法名称 类型 说明
public boolean contains(CharSequence s) 普通 查找指定的字符串是否存在
public int indexOf(String str) 普通 从头查找指定字符串的位置,找不到返回-1
public int indexOf(String str,int fromIndex) 普通 由指定位置向后查找指定字符串的位置,找不到返回-1
public int lastIndexOf(String str) 普通 由后向前查找字符串的位置,找不到返回-1
public int lastIndexOf(String str,int fromIndex) 普通 由指定位置从后向前查找指定字符串的位置,找不到返回-1
public boolean startsWith(String prefix) 普通 判断是否以指定的字符串开头
public boolean startsWith(String prefix,int toffset) 普通 从指定位置判断以指定字符串开始
public boolean endsWith(String suffix) 普通 判断是否以指定的字符串结尾
[范例]判断开头和结尾
String str= "**hello world##";
System.out.println(str.startsWith("**"));
System.out.println(str.endsWith("##"));
5.字符串替换操作
方法名称 类型 说明
public String replaceAll(String regex,String replacement) 普通 全部替换
public String replaceFirst(String regex,String replacement) 普通 替换首个
[范例]验证两个替换操作
String str= "**hello world##";
System.out.println(str.replaceAll("l", "_"));
System.out.println(str.replaceFirst("l", "A"));
6.字符串截取
方法名称 类型 说明
public String substring(int beginIndex) 普通 从指定位置截取到结尾
public String substring(int beginIndex,int endIndex) 普通 截取指定范围的内容
[范例]:字符串截取
String str= "hello world";
System.out.println(str.substring(6));
System.out.println(str.substring(0, 5));
7.字符串的拆分
方法名称 类型 说明
public String[] split(String regex) 普通 按照指定的字符串全拆分
public String[] split(String regex,int limit) 普通 拆分为指定的长度
[范例]:完成全拆分
String str= "hello world";
String[] result = str.split(" ");
for (int i = 0; i < result.length; i++) {
System.out.println(result[i]);
}
[范例]: 拆分为指定的个数
String str= "hello world !!!";
String[] result = str.split(" ",2);
for (int i = 0; i < result.length; i++) {
System.out.println(result[i]);
}
8.其他方法
方法名称 类型 说明
public boolean isEmpty() 普通 判断是否是空字符串
public int length() 普通 取得字符串长度
public String intern() 普通 字符串入池
public String toLowerCase() 普通 转小写
public String toUpperCase() 普通 转大写
public String trim() 普通 去掉左右空格