Java数据代码格式化

时间:2014-01-07 14:52:00

标签: java initialization

我正在编写一个包含许多静态数据的安卓游戏,这些数据在编译时是已知的。如果我可以在C中开发,我会编写很多数据块,例如:

bank_type bank[MAX_BANK] = {
    {"GoldmanSachs", 9, "Rips your face off", 14, 1, 38, 70, 55, 18, 5,-2,-2, 2....},
    {"JPMorgan",   0, "Bunch of girls", 16, 2, 20, 34, 20, 36,-5, 3, 0, 1....},
    {"BankersTrust", 2, "Deutscher bought a lemon", 16, 2, 32, 48, 35, 30,-3,-3, 3,-1....},
    ...

但是鉴于我必须使用不支持编译时数据初始化的java(也就是cobol以上的一级),我尝试以面向对象的方式进行操作,并使用不同的类实例来存储我的每一段静态数据但它让我对所涉及的物体数量感到十分疯狂。我已经疯狂地删除了所有代码并重新开始并将所有内容放入一个大型对象中。我想要的是将我的所有数据块保持在一起,这样我就可以看到并轻松编辑它。我不想将我的数据放入数据库,也不想放入xml文件或csv文件。有没有比写下面的更好的方法,因为我的编辑抱怨我的行太长了。

switch (bank) {
    // in reality really really long lines spread over multiple init functions.
    case BANK1 : initData("GoldmanSachs", 9, "Rips your face off", 14, 1, 38, 70); break;
    case BANK2 : initData("JPMorgan",   0, "Bunch of girls", 16, 2, 20, 34, 20, ); break; 

1 个答案:

答案 0 :(得分:1)

BankType是一类吗?你可以这样做:

BankType bank[] = new BankType[] {
    new BankType("GoldmanSachs", /* further args for constructor */), 
    new BankType("JPMorgan", /* further args for constructor */ ),
    // and so on
}