Java 如何管理具有多个页面的3D阵列初始化?
基本上初始化一个3DJava 如何管理具有多个页面的3D阵列初始化?,java,arrays,Java,Arrays,基本上初始化一个3D数组(静态初始化),该数组大约有200页。 它需要1000多条线路: int[][][] array3D= new int[][][] { { {1,1,1,1,1,1,1,1}, {0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0
数组(静态初始化),该数组大约有200页。
它需要1000多条线路:
int[][][] array3D= new int[][][]
{
{ {1,1,1,1,1,1,1,1},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0}
},
{ {1,1,1,1,1,1,1,0},
{1,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0}
...
...
...200 pages
代码看起来乱七八糟。我想避免循环
s以节省时间。我可以遵循任何清晰的解决方法吗?它也会占用大量代码空间。还有更好的文件使用方法吗
更新:为什么不循环?
因为这是不相关的逻辑
对于EG,考虑9皇后问题(它们应该被放置在棋盘上,这样它们不会互相杀死)。这个问题有94个解决方案,比如一个数组结构,比如代码> QueunSt解(8)[8 ] [94 ] < /代码>。此数组必须手动初始化
如果您真的需要将整个数组放入代码中,我建议您将其放入头文件中,然后将其包含在源代码中
但是,正如评论中所建议的,循环的性能没有太大的不同,而且无论如何,因为初始化只在启动时发生一次,差异不会太大。为什么要避免循环?@Thusitathilinadayaratne因为代码复杂度和时间限制。什么样的时间限制?我不认为通过这种方式而不是使用循环可以获得巨大的时间差异。对我来说,这看起来比一套简单的loops@joeyrohan为什么不把数组放在一个文本文件中,读取并初始化它呢。但它更耗时,因为它处理的是文件IO。但这将是更干净的代码