如何在不事先知道其大小的情况下获取数组的全局引用?

问题描述 投票:0回答:1

我陷入困境,我需要一个数组的全局引用,但只有在用户输入之后才能知道它的大小。

我试图创建另一个类并做一些事情,但问题仍然是相同的,我只能声明本地数组,因为我事先没有它的大小。

可以做些什么?

java arrays global-variables global
1个回答
0
投票

您可以使用包含数组的Provider,并通过静态getter方法为其提供Access。像这样:

public class MyGLobalArrayProvider {
    private static String[] myGlobalArray;

    public static String[] getGlobalArray() {
        return myGlobalArray;
    }


    public static void doSomeUpdateMagic() {…}
}  

一般来说,我会优先使用Guice或Spring的依赖注入解决方案。在这种情况下,您将注入一个包含该数组的单例服务。这将解耦您的代码,这不仅有助于测试,还可以提高维护性。

另一种经典的方法是Singleton-Pattern,如果DI-Approach不合适的话。

© www.soinside.com 2019 - 2024. All rights reserved.