Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 错误:代码太大_Java_Android_Arrays_Database_Bytecode - Fatal编程技术网

Java 错误:代码太大

Java 错误:代码太大,java,android,arrays,database,bytecode,Java,Android,Arrays,Database,Bytecode,我正在制作一个应用程序,它可以在其中查找数据库(我目前正在构建的数据库)。当我收到错误时,我已经完成了超过10/12的工作:代码太大作为Gradle构建消息 java文件几乎只是一个“数据库”(数据在另一个类中使用) 其形式如下: static int[][] mDatabase10 = new int[][]{{1, 0, 0, 0, 11, 22}, {1, 53, 42, 0, 41, 0}, {7, 34, 11, 33, 32, 0}}; 每个阵列中有

我正在制作一个应用程序,它可以在其中查找数据库(我目前正在构建的数据库)。当我收到错误时,我已经完成了超过10/12的工作:代码太大作为Gradle构建消息

java文件几乎只是一个“数据库”(数据在另一个类中使用)

其形式如下:

static int[][] mDatabase10 = new int[][]{{1, 0, 0, 0, 11, 22},
        {1, 53, 42, 0, 41, 0},
        {7, 34, 11, 33, 32, 0}};
每个阵列中有80个阵列(其中12个):

最后有一个函数将请求的数组返回给另一个类

public static int[][] Chordlookup(int chordpart1, int chordpart2){

    return dbDatabase[chordpart1-1][chordpart2-1];
}
现在从我在互联网上读到的关于这个问题的理解来看,这与database.java类太大有关。我怎样才能解决这个问题

我愿意接受建议,因为我对java没有太多经验

编辑:

对代码所做的一些描述:

每个mDatabase都是一个和弦(例如Cm7) 每组6个音是弹奏该和弦的位置: {1, 0, 0, 0, 11, 22} 有些和弦可能有其中之一,有些和弦可能有更多


然后在dbDatabase中,每个块(mDatabaseX0到mDatabaseX3a)都是一个根(如在a、B、C、D、E、F、G中)

代码限制为64K字节,初始化数组时在代码中执行此操作

最好的选择是将数据存储在文件中并读取所需的数据。注意:该文件可以与应用程序一起部署,并直接从存档中获取

另一种选择是使用字符串(多个字符串的长度不受限制)并解析它

编辑:

我建议您以可读的形式编写数据,如

Cm7 Bm6 Am7 ....
Dm8 Cm7 Dm8 ....
....

我不知道你想用这些代码做什么,但这看起来不是正确的方法。你能和我们分享一下你想要达到的目标吗?是的,对不起。我会更新这个问题,看看Peter Lawrey的答案。你应该做什么,而不是把整个数据库写在一个类文件中,把它写在一个文本文件中,在数据库中插入语句(每个Android应用程序都可以有自己的数据库)。你可以看看这个:。我会调查的。谢谢,我应该用什么样的文件?关于这一点,我能读到什么吗?@Marshall我会使用文本文件,因为它更容易阅读和维护。您可能会发现使用
扫描仪
是读取中数据的简单方法。谢谢。我来试试
Cm7 Bm6 Am7 ....
Dm8 Cm7 Dm8 ....
....