在java中 String str = "a"+"b"+"c"+"d";

[复制链接]
查看11 | 回复3 | 2017-9-1 00:04:37 | 显示全部楼层 |阅读模式
楼上是对的就创建了一个 String s = "a" + "b" + "c" + "d""; 赋值符号右边的"a"、"b"、"c"、"d"都是常量 对于常量,编译时就直接存储它们的字面值而不是它们的引用 在编译时就直接讲它们连接的结果提取出来变成了"abcd" 该语句在class文件中就相当于String s = "abcd" 然后当JVM执行到这一句的时候, 就在String pool里找 如果没有这个字符串,就会产生一个 但是你如果是变量的话就会每次都创建一个,这种情况下最好用StringBuilder。这个的用发网上有很多你可以参考一下StringBuilder builder = new Stri...
回复

使用道具 举报

千问 | 2017-9-1 00:04:37 | 显示全部楼层
str 中将存贮字符串 abcd解释:+为字符串连接运算符。等号左侧为一表达式,其结果为字符串abcd,赋于变量str...
回复

使用道具 举报

千问 | 2017-9-1 00:04:37 | 显示全部楼层
首先是 a b c d 四个对象然后 ab abc abcd 3个对象 一共7个String对象...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行