Object&&String学习


Object类

  1. 列表项

String类

  1. 常用方法

构造方法

  • 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()

按字典顺序比较两个字符串

  1. int compareTo(String str)
  2. 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无关。
原创作品,转载请注明出处!
原文地址:https://www.cnblogs.com/yidijimao/p/5146849.html