Java中的字符串类型怎么定义?

2020-05-27 15:17发布

2条回答
那年
2020-05-27 16:53

用String来定义一个字符串一般有两种方法: 
1.String str="hello world";

2.String str=new String ("hello world ")
第一种方式:String str="hello world",生成的str是一个字符串常量。放在常量池中,所谓的常量池,是指给每个class类编译时分配的用来保存class中的常量值,或者常量字符串的一个区域。对于每一个字符串在常量池中只保留一个值,每次用第一种方式定义一个字符串时,jvm就会在常量池中找有没有相同的字符串,有就返回一个该字符串的地址,如果没有在常量池中生成该字符串。

第二种方式:String str=new ("hello world");是生成一个字符串对象,该对象存放在堆内存中,当用第二种方法生成多个相同字符串的对象时,便会在堆中生成多个字符串对象。

一周热门 更多>