写出 String s = “hello“; 和 String s2 = new String(“world“);创建字符 串的区别

简介: **写出 String s = “hello”; 和 String s2 = new String(“world”);创建字符 串的区别。**

**

写出 String s = “hello”; 和 String s2 = new String(“world”);创建字符 串的区别。

**


1. String s = “hello”;

这种获取字符串的方式,只会在串池查看是否存在hello对象,存

在则直接使用,如果不存在,则在串池种创建一个hello字符串对

象,串池中的字符串对象可以供其他其他字符串共享。

2. String s2 = new String(“world”);


这种获取字符串方式首先在堆空间中产生一个String类型的对

象,然后查看在串池中是否存在该字符串,存在-不会在串池创建对

象,但是如果不存在,则依然会在串池中产生一个字符串对象 (这

种方式:最多产生两个对象,一个串池中,一个在堆空间中),最终

将堆空间中字符串对象的地址存储在引用中。


扩充:String s2 = new String(“world”); 默认指向堆空

间中的字符串,如果使用 s2.intern(); 方法,指向串池中的字

符串对象。


2.png


目录
相关文章
|
9月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
498 100
|
9月前
|
开发者 Python
Python中的f-string:高效字符串格式化的利器
Python中的f-string:高效字符串格式化的利器
637 99
|
9月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
|
9月前
|
开发者 Python
Python f-string:高效字符串格式化的艺术
Python f-string:高效字符串格式化的艺术
|
10月前
|
Python
Python中的f-string:更简洁的字符串格式化
Python中的f-string:更简洁的字符串格式化
462 92
|
11月前
|
自然语言处理 Java Apache
在Java中将String字符串转换为算术表达式并计算
具体的实现逻辑需要填写在 `Tokenizer`和 `ExpressionParser`类中,这里只提供了大概的框架。在实际实现时 `Tokenizer`应该提供分词逻辑,把输入的字符串转换成Token序列。而 `ExpressionParser`应当通过递归下降的方式依次解析
504 14
|
数据处理
鸿蒙开发:ArkTs字符串string
字符串类型是开发中非常重要的一个数据类型,除了上述的方法概述之外,还有String对象,正则等其他的用处,我们放到以后得篇章中讲述。
1066 19
|
Java 程序员
课时16:String字符串
课时16介绍了Java中的String字符串。在Java中,字符串使用`String`类表示,并用双引号定义。例如:`String str = "Hello world!";`。字符串支持使用“+”进行连接操作,如`str += "world";`。需要注意的是,当“+”用于字符串与其他数据类型时,其他类型会先转换为字符串再进行连接。此外,字符串中可以使用转义字符(如`\t`、`\n`)进行特殊字符的处理。掌握这些基本概念对Java编程至关重要。
222 0