2016 - 2024

感恩一路有你

java 创建String的两种方式有什么区别?

浏览量:1826 时间:2021-04-11 18:10:14 作者:admin

创建String的两种方式有什么区别?

一般来说,创建字符串对象有两种方法:一种是new type:string s=new string(“ABC”);另一种是双引号类型:string s=“ABC”)。这两种方法有什么区别?

A:这两种方法在内存中生成具有不同访问机制的字符串对象。

Java为字符串类型提供了缓冲池机制。当使用双引号定义对象时,Java环境首先转到字符串缓冲池以查找具有相同内容的字符串。如果存在,则直接应用。如果它们不存在,则将创建一个新字符串并将其放置在缓冲池中。示例代码如下:

string a=“Tom”

string B=“Tom”

在上诉代码中,变量a和B在缓冲区中使用相同的存储对象。

使用字符串构造方法定义对象时,Java环境将在每次调用时创建一个新对象,就像创建其他类型的对象一样。示例代码如下:

string a=new string(“Tom”)

string B=new string(“Tom”)

在上述代码中,变量a和B使用两个不同的存储对象,但对象的内容相同。

运行结果如下:

结论:string s=new string(“ABC”)和string s=“ABC”都可以定义string类型的对象,但需要注意它们之间的区别。一般情况下,建议使用string s=“ABC”模式,因为这种模式采用字符串缓冲池机制,效率更高。

java java缓冲流 java线程池有几种

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。