码迷,mamicode.com
首页 > 其他好文 > 详细

String类的常用方法以及知识点总结

时间:2018-12-20 10:27:57      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:不能   字符串池   字符   程序   实现   地址   总结   str   not   

一,String的简介: 

  •   查阅API中的String类的描述,发现String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。
  •   一旦这个字符串确定了,那么就会在内存区域中就生成了这个字符串。字符串本身不能改变,但str变量中记录的地址值是可以改变的。
  •   字符串的本质是一个字符的数组(String类一旦被创建,就不能被改变)。

1.1,String常量池

  为了减少在JVM中创建的字符串的数量,字符串类维护了一个字符串池,每当代码创建字符串常量时,JVM会首先检查字符串常量池。如果字符串已经存在池中,就返回池中的实例引用。如果字符串不在池中,就会实例化一个字符串并放到池中。

  Note:String s = "aaa";

  这里,jvm创建一个变量引用s,在堆中创建一个对象aaa,将aaa放进常量池。s指向aaa。
    然后就到了change方法里,常量池在java用于保存在编译期已确定的,已编译的class文件中的一份数据。它包括了关于类,方法,接口等中的常量,也包括字符串常量。

1.2,String s = "aaa";与String s = new String("aaa");的区别:

  String s = "aaa"; 对象只是一个引用,内存中如果有"aaa"的话,s就指向它;如果没有,才创建它;
如果你以后还用到"aaa"这个字符串的话并且是这样用:
String ss = "aaa"; String sss = "aaa"; 这三个变量都共享"aaa"。
而String s = new String("aaa");是根据"aaa"这个String对象再次构造一个String对象,将新构造出来的String对象的引用赋给aaa

 

1.1,String常用方法

  1.public String(); //空参构造 初始化一个新创建的 String 对象,使其表示一个空字符序列

 

String类的常用方法以及知识点总结

标签:不能   字符串池   字符   程序   实现   地址   总结   str   not   

原文地址:https://www.cnblogs.com/joeyJss/p/10147492.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!