String类、有关字符串的操作查找、替换等

  1. 字符串使用就采用直接赋值。
  2. 字符串相等比较
    (1)字符串内容比较就使用equals()实现;
    (2) == 本身是进行数值比较的,如果现在用于对象比较,那么所比较的就应该是两个对象所保存的内存地址数值比较,而并没有比较对象的内容。
  3. 字符串别改变太多
  4. String类的设计使用了共享设计模式
    在JVM底层实际上会自动维护一个对象池(字符串对象池),如果现在采用了直接赋值的模式进行String类的对象实例化操作,那么该实例化对象(字符串内容)将自动保存到这个对象池之中。
    如果下次继续使用直接赋值的模式声明String类对象,此时对象池之中如若有指定内容,将直接进行引用;如若没有,则开辟新的字符串对象而后将其保存在对象池之中以供下次使用,所谓的对象池就是一个对象数组(目的就是减少开销)
  5. String类中两种对象实例化的区别
    (1)直接赋值:只会开辟一块堆内存空间,并且该字符串对象可以自动保存在对象池中以供下次使用。
    (2) 构造方法:会开辟两块堆内存空间,其中一块成为垃圾空间,不会自动保存在对象池中,可以使用intern()方法手工入池。String类、有关字符串的操作查找、替换等
    6.字符串和字符数组相互转换
    String类、有关字符串的操作查找、替换等
    String类、有关字符串的操作查找、替换等
    7.字符串和字节数组相互转换
    String类、有关字符串的操作查找、替换等
    String类、有关字符串的操作查找、替换等
    8.字符串比较String类、有关字符串的操作查找、替换等
    9.字符串查找
    String类、有关字符串的操作查找、替换等
    10.字符串替换
    String类、有关字符串的操作查找、替换等
    11.字符串截取
    String类、有关字符串的操作查找、替换等
    12.字符串首字母大写String类、有关字符串的操作查找、替换等