String类的方法和案例

196 阅读2分钟


  1. String字符串,在Java中所有被""包裹的内容,都是字符串。

String字符串的特点:

一.字符串内容不可变,一旦创建后内容不能被修改。

二.字符串可以共享,可以被多个引用同时使用。

三.字符串底层是字符数组(JDK8及以前)/字节数组(JDK9及以后)。

  1. String的构造方法

四种构造方法:

一.空参构造。

二.传char[]构造。

三.传byte[]构造。

四.直接赋值(没有通过new创建对象)。

补充:在输出字符串对象的时候,并不会输出其地址值,而是输出其内容。

每创建一次对象,都会在堆内存中开辟新的内存空间。

所以,每new一次,都是不同的对象,地址值也不一样。

通过第四种方式创建的String对象,会放在常量池中:

第一次创建某个字符串的时候,先查询常量池中是否已经有了该字符串,如果没有会创建以后放在常量池中并且把地址值赋值给引用;后续再次创建,如果在常量池中发现需要的字符串,就不创建,直接使用(出现多个引用指向同一个对象的情况)。

String s1 = "abc";

String s2 = "abc";

s1 = "abcd";

  1. String类的方法

对于基本数据类型来说,使用==比较的时候,比较的是两个的数据值.

对于引用数据类型来说,使用==比较的时候,比较的是两个对象的地址值.

字符串比较内容是否相同:

使用

equals(String)

public boolean

equals(String str)

以后,如果要比较两个字符串是否一样,优先使用equals()方法

或者使用更高效的方式: s1 == s2 || s1.equals(s2)

public char charAt(int index) 返回指定索引值处的字符

public int length() 返回字符串的长度

(数组的长度用属性length,后面没有小括号)

for(int i= 0; i< s.length() ; i++){

s.charAt(i)