组成的一串数据,也可以看成是一个字符数组
由API可以知道:
A: 字符串字面值‘abc’也可以看成一个字符串对象
B: 字符串是常量 一旦被赋值,值 就不能被改变
不能被改变的是值 但不是引用不能变
字符串直接赋值的方式是先到字符串常量池里去找,如果有就直接返回,没有,就创建并返回
String s =new String ("hello") 和 String s="hello"的区别 前者会创建两个对象 ,后者创建一个对象
字符串如果是变量相加,先开空间,再拼接
字符串如果是常量相加,是先加 ,然后在常量池找,如果有直接返回,否则创建
构造方法:
public String();空构造
public String(byte [ ] bytes); 把字节数组转成字符串
public String(byte [ ] bytes ,int index ,int length ); 把字节数组从下表index开始长度为length 的一部分转化成字符串
public String(char [ ] chars); 把字符数组转成字符串
public String (char [ ], int index, int count);
public String ( String original);把字符串常量值转成字符串
字符串的常用方法
public int length(); 返回此字符串的长度