String类

本质:一串不可变的字符数组。

请看String的源码有如下一句话:

常量池(了解即可)

常量池属于方法区,分为三种。

  • 1.全局字符串常量池(String Pool)

存放字符串常量的引用值,每个JVM只有一份。

  • 2.class文件常量池(Class Constant Pool)

每个class在编译阶段都有,存放常量(文本、字符串、final常量……)和符号引用。

  • 3.运行时常量池(Runtime Constant Pool)

每个class都有一个运行时常量池,作用是类在解析之后,将符号引用替换成直接引用。

把全局字符串常量池的引用值和class文件常量池的值关联起来。

关于字符串的“+”连接符以及字符串比较请仔细看运算符和继承章节,里面有讲。

String API 请自行到 https://www.oracle.com/technetwork/java/javase/documentation/jdk8-doc-downloads-2133158.html 下载JAVA的API包,下载完解压打开docs/api/index.html进行查看API的查看。如何查看请自行搜索相关教程,这不是我们的重点。

String常用Api

这些api开发中经常用,要多练习。

效果:

String类的完整代码:

Last updated

Was this helpful?