String类

 

String类在java.lang包下,所以使用的时候不需要导包 String类代表字符串,java程序中的所有字符串文字(例如"abc")都被实现为此类的实例。也就是说,java程序中所有的双引号字符串,都是string类的对象

字符串的特点 1、字符串不可变,它们的值在创建后不能被更改 2、虽然String的值不可变的,但是它们可以被共享 3、字符串效果上相当于字符串组(char[]),但是底层原理是字节数组(bytell)

String类的常用方法

方法名说明
public boolean equals(Object anObject)比较字符串的内容,严格区分大小写
public char charAt(int index)返回指定索引处的char值
public int length()返回此字符串的长度

 

String类的构造方法

方法名说明
public String()使用无参构造方法创建一个空白字符串对象,不含有任何内容
public String(char[] chs)根据字符数组的内容,来创建字符串对象
public String(byte[] bys)根据字节数组的内容,来创建字符串对象
String s = "abc"没有使用构造方法,直接赋值的方式创建字符串对象,内容就是abc

 

String对象的特点

通过new创建的字符串对象,每一次new都会申请一个内存空间,虽然内存相同,但是地址值不同

上面的代码中,JVM即java虚拟机会首先创建一个字符数组,然后每一次new的时候都会有一个新的地址,只不过s1和s2参考的字符串内容是相同的

 

字符串的比较

使用==做比较 1、基本类型:比较的是数据值是否相同 2、引用类型:比较的是地址值是否相同

字符串是对象,它比较内容是否相同,是通过一个方法来实现的,这个方法叫做:equals() 1、public boolean equals(Object anObject):将此字符串与指定对象进行比较,由于我们比较的是字符串对象,所以参数直接传递一个字符串

 

遍历字符串

 

统计字符串次数

 

拼接字符串

 

字符串翻转