gpt4 book ai didi

java - 下面的代码中创建了多少个 String 对象?

转载 作者:行者123 更新时间:2023-11-30 07:53:47 25 4
gpt4 key购买 nike

我试图找到在下面的代码中创建的 String 对象的数量。我认为是 4,因为 String s 是不可变的,因此 prod() 方法中的前两行将创建一个对象,第三行将创建 2 个对象。因此总共将创建 4 个对象。有人能澄清一下吗?

public class Solution {

public void prod() {
String str="Sku";
str=str+"001";
String skuId= str.substring(3,6);
System.out.println(skuId.toString());
}
public static void main(String[] args) {
new Solution().prod();
}
}

最佳答案

我认为是 4。下面是我的解释。

public class Solution {
public void prod() {
String str = "Sku"; // first
str = str + "001"; // second when create "001" and third when concat strings
String skuId = str.substring(3, 6); //fourth
System.out.println(skuId.toString()); //method toString don't create new string
}

public static void main(String[] args) {
new Solution().prod();

}
}
  1. “Sku”//创建新
  2. "001"//新建
  3. "Sku001"//str + "001"运算结果
  4. "001"//str.substring(3, 6) 的结果。 Substring方法返回new String()

关于java - 下面的代码中创建了多少个 String 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32973156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com