当前位置: 首页 > 面试题库 >

java性能:是将hashMap值存储在变量中吗?

华烈
2023-03-14
问题内容

我的目标是减少内存使用量。如果需要多次使用hashMap值,应该将其存储在变量中吗?

public void upcCheck() {
          String prodUPC = pHashMap.get("productUpc");
          if(prodUpc == ''){
            //do stuff;
          }
          else if(prodUpc == '0123456'){
            //do other stuff;
          }
    }

还是我应该始终使用hashMap的get()方法来避免冗余和不必要的内存使用?

 public void upcCheck() {

              if(pHashMap.get("productUpc") == ''){
                //do stuff;
              }
              else if(pHashMap.get("productUpc") == '0123456'){
                //do other stuff;
              }
        }

hashMap包含很多值ae:产品类型,产品价格等…许多方法都设置为可以使用这些值。所以我想知道最好的方法。谢谢!


问题答案:

这不是多余的,并且不需要占用很多额外的内存。额外的变量不会占用太多内存;就像这篇文章提到的那样,没有标准数量(取决于虚拟机),但是数量很小,不必担心。

在这种情况下,如果使用List,那将很重要,请参阅如何根据阵列的大小来增加访问该列表的时间。时间的这种度量称为时间复杂度。虽然,由于您正在使用Map,所以不必担心。

我更喜欢使用额外的变量,因为它个人更容易阅读。始终最好选择可读性。删除变量不会导致任何显着的性能提升,因为它根本不需要占用太多内存,也不必担心。



 类似资料:
  • 问题内容: 考虑同一循环迭代的两个版本: 和 后一种版本比前一种版本快吗? 问题答案: 更新:16/12/2015 由于这个答案似乎仍然有很多观点,我想重新审视这个问题,因为浏览器和JS引擎不断发展。 我没有使用JSPerf,而是使用原始问题中提到的两种方法,编写了一些代码来遍历数组。我已将代码放入函数中,以分解功能,如在实际应用程序中希望的那样: 为了尽可能公平地进行测试,每个测试运行5次并取平

  • 问题内容: 我是Java新手。我如何在HashMap中存储整数值数组,之后我将此HashMap写到txt文件中,但此刻目前不重要。我可以存储单个字段,但不能存储数组。有任何想法吗 ? 问题答案: 例如选一个 要不就

  • 本文向大家介绍将列的值存储到MySQL存储过程的变量中,包括了将列的值存储到MySQL存储过程的变量中的使用技巧和注意事项,需要的朋友参考一下 要声明变量,请在MySQL存储过程中使用DECLARE。让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 这是创建存储过程并将上述表的列值存储在存储过程变量中的查询- 调用存储过程- 这

  • 问题内容: 我想将生成的图像存储在变量中,以将其用作嵌入式图像。 这些功能都不适合我的用例: -将其写入标准输出。这确实有帮助..因为我必须将图像嵌入html文件中。 /从命令行执行时不执行任何操作 问题答案: 您尝试过还是等效的?

  • 问题内容: 是否可以将方法存储到变量中?就像是 我认为使用lambda可以实现,但我不知道如何。 问题答案: 是的,您可以对任何方法进行变量引用。对于简单的方法,通常使用class就足够了。这是一个工作示例: 如果您的方法与这些接口都不匹配,则可以定义自己的接口。唯一的要求是必须有一个抽象方法。

  • 问题内容: 我已经学习Python几个月了,对C语言的了解也很少,我想知道是否有人可以帮我解决这个疑问: 变量是名称,值还是存储位置? 例如: 变量x,x的值还是x在内存中的位置? 我正在寻找关于什么是变量的清晰解释。我已经看过Wikipedia上有关变量和此问题的页面,但对我来说都不是很清楚。如果这是一个重复的问题,那么指向正确答案的链接将非常有用。 谢谢! 问题答案: 语句发生了几件事: 创建