没有简单的方法在Java中"包含"?

1 java import insert include extend

当逻辑上看起来好像很简单,那么事实证明它完全是错综复杂的,

我没有太多使用Java,所以请原谅我的无知.这是我想要做的:

我在一个.java文件中有一个很好的干净算法,我想从一个初始化的数组中提供它.该数组包含超过40,000个元素,因此我希望它本身就是一个单独的文件.我该怎么做呢?有没有严肃的方法只是说{在这里插入filename.txt的内容}?

sep*_*p2k 10

File1.java:

class File1 {
    static int[] bigArray = {1,2,3};
}
Run Code Online (Sandbox Code Playgroud)

File2.java:

class File2 {
    static int main(String[] args) {
        doSomeThingWith(File1.bigArray);
    }
}
Run Code Online (Sandbox Code Playgroud)

您也可以使用静态导入来使用bigArray而无需预先添加File1..


Mic*_*rdt 7

Java中基本的代码单元是类,而不是文件.导入文件根本没有意义,这是错误的抽象级别.不要考虑文件 - 考虑不同类中的代码以及如何调用该代码.该类定义的文件(并且它根本不必是文件!)无关紧要.

顺便说一下,如果直接在代码中定义方法,那么有40,000个元素可能会遇到方法大小的限制.将数据放入文本文件并解析它会更好.这样,您也不必在更改数据时重新编译任何内容.

编辑:为文件编写解析器的另一种方法是计算数据一次,将其放入适当的Java数据结构(数组,列表,映射等),然后使用ObjectOutputStream将其序列化为文件.请注意,如果数据存储在稍后更改其签名的类中,则会导致问题.