簡體   English   中英

為什么我的應用程序在設置數組后崩潰了?

[英]Why does my App crash after i set an array?

我的應用程序一直使用數組。 但我只在創建應用程序后設置值,其中:

      public String[][] stunde = new String [6][13];
      public String[][] lehrer = new String [6][13];


    stunde[1][1]= "SZ";
    stunde[2][1]= "Bi";
    stunde[3][1]= "";
    stunde[4][1]= "DG2";
    stunde[5][1]= "";


    lehrer[1][1]= "Gt";
    lehrer[2][1]= "Pön";
    lehrer[3][1]= "";
    lehrer[4][1]= "Lc";
    lehrer[5][1]= "";

但現在我想在之前設置這些值,以便我可以在另一種方法中使用它們。 像這樣:

  public  String[][] stunde = {
            {"SZ", "SZ", "Ku", "Ku", "M", "M", "GeL1", "EL2"},
           {"Bi", "Bi", "EL2", "EL2", "Pl", "Pl","DG2","If"},
            {"", "", "EL2","EL2", "","","M","Bi"},
            {"DG2", "DG2", "","", "GeL1","GeL1","Pl","Ku"},
            {"", "", "GeL1","GeL1", "If","If","","SZ","","","Sp","Sp"}
    };

但是在我嘗試了第二個代碼后,我的應用程序在打開后開始崩潰。

有什么想法嗎?

您的舊代碼使用從一級開始的頂級數組上的索引,而不是零。 看起來您的應用程序的其余部分也依賴於該編號。

添加“假”行和列來解決問題:

public  String[][] stunde = {
/*0*/  {"", "", "", "", "", "", "", "", ""},
/*1*/  {"", "SZ", "SZ", "Ku", "Ku", "M", "M", "GeL1", "EL2"},
/*2*/  {"", "Bi", "Bi", "EL2", "EL2", "Pl", "Pl","DG2","If"},
/*3*/  {"", "", "", "EL2","EL2", "","","M","Bi"},
/*4*/  {"", "DG2", "DG2", "","", "GeL1","GeL1","Pl","Ku"},
/*5*/  {"", "", "", "GeL1","GeL1", "If","If","","SZ","","","Sp","Sp"}
};

現在你的第0行仍未使用,你想要第1行到第5行的應用程序的其余部分將找到之前的數據。 列編號也是如此。

注意:一旦你控制它並且應用程序不再崩潰,長期的方法是改變使用數組索引0..4而不是1..5

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM