字符串的本质(低层实现其实就是char[ ]),char表示一个字符,数组表示同一种类型的多个数据。
那么如何理解char[ ]?
String str=”ABC";//定义一个字符串对象,等价于
char[ ] str=new char[ ]{'A','B','C',};
String类表示不可变的字符串,当前对象创建完毕之后,该对象的内容(字符串序列)是不能改变的,一旦内容改变就是一个新的对象。
-----------------------------------------------------------
String对象的创建:
1)直接赋值一个字面量; String str1=“1234”
2)通过构造器创建; String str2=new String(“1234”);
两种方式的区别,分别在内存中如何分布?
String对象的空值:
1)表示引用为空(null) String str=null;没有初始化,没有分配内存空间,
2)内容为空的字符集 String str=“”;已经初始化,分配内存空间,不过没有内容
--------------------------------------------------------------
判断字符串为空:
1)引用不能为空(null);2)字符串内容不能为空(“”);
--------------------------------------------------------------
字符串的比较操作
1)使用“==” 只能比较引用的内存地址是否相同;
2)使用equals()方法;