2017-03-31 29 views
0

所以我有這個問題: 我有一個名爲MainBoard與.setBoard() - 方法的類。此方法需要一個字符串,並應將其轉換爲2d的字符串數組。將字符串轉換爲2維數組

我的字符串長度爲64個字符,並且該方法應該將其轉換爲「8x8」2D陣列。 這是setBoard法:

public String[][] setBoard (String boardSeed) { 
    for(int i = 0; i < numRows; i++) { 
     for(int j = 0; j < numColumns; j++) { 
      cellColored[i][j] = String.valueOf(boardSeed.charAt(i + j)); 
     } 
    } 
    invalidate(); 
    return 2dBoard; 
} 

這是該活動的方法:

mainBoard.setBoard(board); 

的想法是,第一個字符是在左上角和最後一個字符是在底部對。它應該逐行並從左到右地移動。

現在的問題:

根本沒有輸出。董事會並沒有改變,儘管它正在刷新。

This is the grid which should visualise the 2dBoard-Array

附加信息:

我的可視化的方法是:0 =灰色; 1 =紅色; 2 =藍色。這些數字是首先存儲在字符串,然後被轉換爲二維數組

太感謝你了,如果你能幫助我在這裏:)

+0

這裏還有其他的錯誤,除非前14個字符都是一樣的。至少循環不會使用字符串中的每個字符。如果要使用全部64個字符,for循環中的賦值應該是'cellColored [i] [j] = String.valueOf(boardSeed.charAt((numColumns * i)+ j));' –

+0

我會做的是像CSV文件結構:每行由colums和separtor(即:';')組成。並且每行都以......行結束符(即:\ n)結尾。然後很容易進行嵌套拆分。 –

回答

0

原來,我只是直線上升啞。它工作,但onDraw()方法沒有觸發。

謝謝你! :)