Object类
- 列表项
String类
- 常用方法
构造方法
- public String()
- public String(byte[] bytes)
- public String(byte[]bytes,int offset,int length)
- public String(char[] value)
- public String(char[] value,int offset,int count)
- public String(String original)
String类的判断功能
- boolean equals(Object obj)
- boolean equalsIgnoreCase(String str)
- boolean contains(String str)
- boolean startsWith(String str)
- boolean endsWith(String str)
- boolean isEmpty()
String类的获取功能
- int length()
- char charAt(int index)
- int indexOf(int ch)
- int indexOf(String str)
- int indexOf(int ch,int fromIndex)
- int indexOf(String str,int fromIndex)
- String substring(int start)
- String substring(int start,int end)
String类的转换功能
- byte[] getBytes()
- char[] toCharArray()
- static String valueOf(char[] chs)
- static String valueOf(int i)
- String toLowerCase()
- String toUpperCase()
- String concat(String str)
替换功能
- String replace(char old,char new)
- String replace(String old,Stringnew)
去除字符串两空格
- String trim()
按字典顺序比较两个字符串
- int compareTo(String str)
- int compareToIgnoreCase(String str)
2.课堂笔记
- string.equal重写的Object的toString()方法
下面两句代码的区别:
String str1="abc";
String str2=new String("abc");
str1会先在常量池中查找,如果有的话就返回abc在常量池中的地址,将地址给str1。如果没有,就直接在常量池中创建,并将地址给str1。
str2会现在heap中 新建一个空间,然后在常量池中查找abc,如果有的
话,传值给 新建的空间,并将空间所在地址给str2.
string相关训练
String s1 = new String("hello");
String s2 = new String("hello");
System.out.println(s1==s2); //false
System.out.println(s1.equals(s2)); //true
String s3 = new String("hello");
String s4 = "hello";
System.out.println(s3==s4); //false
System.out.println(s3.equals(s4)); //true
String s5 = "hello";
String s6 = "hello";
System.out.println(s5==s6); //true
System.out.println(s5.equals(s6)); //true
特别注意事项:
String s3="hello"
changeString(s3);
System.out.println("StringDemo2.main()"+s3);//结果为hello
public static void changeString(String s){
s="123";
}
原因是s3是字符常量,将s3的地址值传给了s,而后改变的是s,跟s3无关。