键盘手C 2016-04-24 08:03 采纳率: 60%
浏览 1385

关于java中的String类的方法的问题

新人初学java,今天遇到这样一个问题:
我知道在java中,String是一个字符串类,但是它的一些问题有点疑惑不解
1.定义数据类型
String str;
我知道这是定义了一个str变量
但是却又出现了一个问题;
Sting str = new String(c,0,4) // c是数组
我查了下jdk
文档,Sring类当中有很多方法,我知道调用其中的的方法必须要实例化,也就是创建一个对象,但是我不明白就是为什么在声明变量的时候不用new呢,应该也是要分配空间去存放这个变量的呀,这是为什么呢,麻烦各位解答了,在下谢谢各位了

  • 写回答

4条回答

  • Robot-C 2016-04-24 08:12
    关注

    此问题在项目中被发现,经查看JDK源码(JDK1.6),String类的public String substring(int beginIndex, int endIndex)的实现让我很意外。

    想重现这个场景很容易,请看代码。

     

     

    [java] view
    plaincopy

    import&n......
    答案就在这里:String类substring方法导致的Java内存泄漏问题
    ----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

    评论

报告相同问题?

悬赏问题

  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办