如何将0-1值的数组转换为Cell引用的二维数组

时间:2015-11-27 16:13:34

标签: java arrays multidimensional-array

我是编程的新手,我正在开发一个java程序,用户输入字母单词的字符串消息,然后将字符串转换为2D单元格。

我使用了一种方法将消息转换为0-1值的数组。以下是使用此方法的字母“E”

的示例
1111111
1000000
1000000
1000000
1111000
1000000
1000000
1000000
1111111

带1的条目表示必须具有前景(红色)颜色的二维数组的单元格和带有0背景(白色)颜色的单元格

现在我需要定义一个方法,该方法接受方法返回的2-Dim整数数组,然后返回一个2-Dim单元格数组,其中零被映射到具有白色的单元格,并且其中一个被映射到单元格一种红色。

我不知道如何处理这种方法。我需要在正确的方向上提示或推动才能让我开始。

编辑:

到目前为止,这是我的代码:

public DataManager(String message){

    for(int i = 0; i<message.length(); i++){

        int[][] text = Alphabet.toIntArray(message.charAt(i));  

    }

我想弄清楚的是如何获取Alphabet.toIntArray方法返回的整数。

这就是我所说的“2D细胞阵列”

字符串“TURTLE”应为

enter image description here

1 个答案:

答案 0 :(得分:0)

您需要迭代数组中的每个值,为每个具有适当属性的值创建一个新Cell,并将它们添加到新数组中的相同位置。像这样:

Cell[][] cellArray = new Cell[inputArray.length][inputArray[0].length]();
for (int i=0; i<inputArray.length; i++) {
  for (int j=0; j<inputArray[0].length; j++) {
    Cell cell = new Cell();
    if (inputArray[i][j] == 0) {
      // Set cell attributes for 0 values
    } else {
      // Set cell attributes for 1 values
    }
    cellArray[i][j] = cell;
  }
}

请注意,这只是一个非常粗略的例子,可以帮助您找到正确的方向。希望它有所帮助