String类的常用方法
char charAt(int index) | 获取给定的Index处的字符 |
int compareTo(String anotherString) | 按照字典的方式比较两个字符串 |
int compareToIgnoreCase(String str) | 按照字典的方式比较两个字符串,忽略大小写 |
String concat(String str) | 将给定的字符串连接到这个字符串的末尾 |
static String copyValueOf(char[] data) |
创建一个和给定字符数组相同的String对象 |
static String copyValueOf(char[] data,int offset,int count) | 使用偏移量,创建一个和给定字符数组相同的String对象 |
boolean equals(Object anObject) | 将这个String对象和另一个对象String进行比较 |
boolean equalsIgnoreCase(String anotherString) | 将这个String对象和另一个对象String进行比较,忽略大小写 |
void getChars(int strbegin,int strend,char[] data,int offset) | 将这个字符串的字符复制到目的数组 |
int indexOf(int char) | 产生这个字符串中出现给定字符的第一个位置的索引 |
int indexOf(int ch,int fromIndex) |
从给定的索引处开始,产生这个字符串中出现给定字符的第一个位置的索引 |
int length() | 产生这个字符串的长度 |
boolean regionMatches(boolean ignoreCase,int toffset,String other,int ooffset,int len) | 检查这个字符串区域是否相等,允许忽略大小写 |
String replace(char oldChar,char newChar) | 通过将这个字符串中的oldChar字符转换为newChar字符来创建一个新字符串 |
boolean starsWith(String prefix) | 检查这个字符串是否以给定的前缀开头 |
boolean starsWith(String prefix,int toffset) | 从给定的索引处开头,检查这个字符串是否以给定的前缀开头 |
String substring(int strbegin) | 产生一个新字符串,它是这个字符串的子字符串 |
String substring(int strbegin,int strend) | 产生一个新字符串,它是这个字符串的子字符串,允许指定结尾处的索引 |
char[] toCharArray() | 将这个字符串转换为新的字符数组 |
String toLowerCase() | 将这个String对象中的所有字符变为小写 |
String toString() | 返回这个对象(它已经是一个字符串) |
String toUpperCase() |
将这个String对象中的所有字符变为大写 |
String trim() | 去掉字符串开头和结尾的空格 |
static String valueOf(int i) | 将int参数转化为字符串返回。该方法有很多重载方法,用来将基本数据类型转化为字符串 |
1、charAt 获取给定的Index处的字符
String s1 = "Hello,Java!";
char s2 = s1.charAt(5);
System.out.println(s2);
输出:,
2、length()产生这个字符串的长度
String s1 = "Hello,Java!";
String s3 = new String("你好,Java");
int len1 = s1.length();
int len2 = s3.length();
System.out.println("字符串s1长度为"+len1+"\n"+"字符串s3长度为"+len2);
输出:
字符串s1长度为11
字符串s3长度为7
3、equals将这个String对象和另一个对象String进行比较
String s4 = "Java";
String s5 = new String("Java");
if(s4 == s5)
System.out.println("s4 == s5");
else
System.out.println("s4 != s5");
if(s4.equals(s5))
System.out.println("s4 equals s5");
else
System.out.println("s4 not equals s5");
输出:
s4 != s5
s4 equals s5
4、intern()方法,如果字符串池中已经包含一个等于此String对象的字符串(用equals(Object)方法确定),则返回池中的字符串。否则,将此String对象添加到字符串池中,并返回此String对象的引用。
String s4 = "Java";
String s5 = new String("Java");
s5 = s5.intern();
if(s4 == s5)
System.out.println("s4 == s5");
else
System.out.println("s4 != s5");
if(s4.equals(s5))
System.out.println("s4 equals s5");
else
System.out.println("s4 not equals s5");
输出:
s4 == s5
s4 equals s5
5、+和concat方法连接字符串。
String s6 = "Hello";
String s7 = s6 + ",";
String s8 = s7.concat(" Java");
String s9 = new String(" ! ");
String s10 = s8.concat(s9);
System.out.println("连接而成的字符串是"+s10);
输出:
连接而成的字符串是Hello, Java !
6、复制字符串:copyValueOf(char[] data)、copyValueOf(char[] data,int offset,int count)、getChars、toCharArray、substring(int strbegin)、substring(int strbegin,int strend)。
String s11 = new String();
char data[] = {'a','b','c','d','e','f'};
s11 = String.copyValueOf(data); //将一个和字符数组相同的String对象赋值给s11
System.out.println("s11 = " + s11);
s11 = String.copyValueOf(data,2,3); //将一个和字符数组下标2开始往后的3个字符相同的String对象赋值给s11
System.out.println("s11 = " + s11);
s11.getChars(1,2,data,0); //将这个字符串从下标1开始到下标2-1的字符复制到目的data数组从下标0处开始
System.out.println("data = "+String.copyValueOf(data)); //转成字符串String对象输出
data = s11.toCharArray(); //将字符串转换为新的字符数组,并赋值给data
System.out.println("data = "+String.copyValueOf(data));
String s12 = new String();
String s13 = new String();
s12 = s11.substring(0); //将s11字符串从下标0开始的字符赋值给字符串s12
System.out.println("s12 = " +s12);
s13 = s11.substring(1,2); //将s11字符串从下标1开始到下标2-1的字符赋值给s13
System.out.print("s13 = "+s13);
输出:
s11 = abcdef
s11 = cde
data = dbcdef
data = cde
s12 = cde
s13 = d
7、 字符串中查找字符和字串charAt、indexOf、lastIndexOf。
String s14 = "Javav";
char c = s14.charAt(2); //获取字符串s14索引2处的字符,并赋值给c
System.out.println("c = "+c);
int i = s14.indexOf('a'); //产生字符串s14中第一次出现字符a位置的索引,并赋值给i
System.out.println("fistchar = "+i);
int j = s14.lastIndexOf('a'); //产生字符串s14中最后一次出现字符a位置的索引,并赋值给j
System.out.println("lastchar = "+j);
i = s14.indexOf("av"); //产生字符串s14中第一次出现字符串av位置的索引,并赋值给i
System.out.println("fiststring = "+i);
j = s14.lastIndexOf("av"); //产生字符串s14中最后一次出现字符串av位置的索引,并赋值给j
System.out.println("laststring = "+j);
输出:
c = v
fistchar = 1
lastchar = 3
fiststring = 1
laststring = 3
待续.......
推荐阅读