2011-08-08 71 views
0

我在java中創建了以下字符串多維數組。其中頂部外層是6層​​,每層下有4個不同的子層(4個子層),每個組有10個集合,有頭部和尾部。我想訪問level1 - >> sublevel1- > set1 - >頭和尾巴... level3-> group4-> set7->頭和尾巴等等,直到level6-> sublevel4-> set10->頭和尾巴。java中的多維數組

final String[][][][] myStr = { 
           { 
           {          

            {"it", "it was over"}, 
            {"on","work on it"}, 

           }, 
           {          

            {"very", "very good girl"}, 
            {"all","all around"}, 

           }, 
                                             { 

           { 
            {"for", "good for you"}, 
            {"are","are so long"}, 

           }, 
           {           


           {"with","with his cat"}, 
           {"it", "it was over"}, 

           } 
          }, 

       ...  

       { 
        {        
         {"get","get the cat"}, 
         {"for", "good for you"}, 

        }, 
        {          

         {"on","work on it"}, 
         {"can","can come here"}, 

        }, 
        {        
         {"as","as long as"}, 
         {"but", "but not me"}, 

        }, 
        {          
         {"aunt","was my aunt"}, 
         {"system", "her system was"}, 

        } 
       } 
      }; 

幫我解決這個問題,我想這對我很感激。

+0

請重新格式化您的代碼 –

+0

請告訴我們您的「問題」。 4D陣列本身不是問題... –

+0

我想訪問level1 - >> sublevel1-> set1 - >頭部和尾部... level3-> group4-> set7->頭部和尾部等等level6-> sublevel4-> set10->頭部和尾部。 –

回答

2

無論你的問題是,你不應該使用這樣的數組,因爲你的代碼將不可能理解和不可維護。

您應該創建一個Level類,這將使訪問一組或SubLevel實例的列表,這應該給你訪問一組或Group實例列表等

這將導致更多可讀的代碼,並允許你在這些類中封裝行爲。

0

我不知道你實際上是試圖做的,但它看起來像你想的話,從做一個映射到句子片段它在發現 - 嘗試HashMap<String,String>

1

對多維數組說:不,如果關係比較複雜,可以創建自定義類,否則使用簡單的Map。