【问题标题】:Using Strings vs POJOs ...which one consumes more memory使用字符串与 POJO ...哪个消耗更多内存
【发布时间】:2012-02-10 03:35:42
【问题描述】:

我有一个包含 varchar 数据类型的数据库列。我想将此数据存储在一个数组列表中,以便与另一个列表进行比较。我可以想到两种方法来做到这一点。一种是获取数据并将其分配给字符串并将其存储在数组列表中。第二种方法是有一个 POJO ,它将有一个用于此变量的 getter 和 setter 方法并将其存储在 POJO 中,而 POJO 又存储在 arraylist 中。当我必须将它与另一个变量进行比较时,我必须进行字符串比较或从 POJO 的 getter 方法中获取它,然后进行比较。虽然我觉得使用 String 减少了很多代码,但我想知道使用一个(String)而不是另一个(POJO)是否有任何内存含义。我通常需要比较大约 1000 个对象。那么哪一个会消耗更少的内存....换句话说,哪个会运行得更快....更好的性能。我需要使用 JAVA 1.4。

【问题讨论】:

  • 认为 java 标签比使用标签更有意义并添加。
  • 为什么需要过于复杂化而不是仅仅使用字符串和arraylist?如果使用POJO,除了POJO里面的字符串之外,不就是另一个对象吗?
  • 我的常规想法和你提到的一样。但我不确定这些计算背后是否有更深层次的计算机科学。因此问题。
  • 在Java中,科学是,当你创建一个对象时,它会占用堆的一部分,在pojo的情况下,它将是pojo的堆空间和String(即内存)的堆空间和时间复杂度也(getter/setter)。
  • 谢谢..我想接受这个答案...

标签: java string performance memory pojo


【解决方案1】:

在 Java 中,科学是,当您创建一个对象时,它会占用堆的一部分,在 pojo 的情况下,它将是 pojo 的堆空间和 String 的堆空间(这是内存)和时间复杂度(getter/setter )。我更喜欢字符串。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-20
    • 1970-01-01
    • 1970-01-01
    • 2015-07-04
    • 1970-01-01
    相关资源
    最近更新 更多