gpt4 book ai didi

java访问变量的时间

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:03:26 25 4
gpt4 key购买 nike

假设我们有一个包含 1000 个字符串常量的 Const.java 类:

public static final String foo1 = "foo1";
public static final String foo2 = "foo2";
...
public static final String foo1000 = "foo1000";

现在,另一个类中的一些方法执行

String s = Const.foo1000;

变量的访问时间是否取决于此类变量的数量?(也就是说,如果 Const.java 中有 1,000,000 个字符串,代码会以同样的速度运行吗?)

最佳答案

访问时间将始终相同。

当应用程序启动时,您的类使用类加载器加载到 RAM 内存中。常量(静态/最终)存储在内存位置,无论在何处使用,都会在编译时替换代码中的位置。

您应该注意的唯一区别是在您的应用程序开始时,这将与您在类中拥有的变量数量成正比。

访问内存位置总是 O(1),就像从 HashMap 中检索对象一样。

关于java访问变量的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44504135/

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