我是编程的新手,我正在开发一个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”应为
答案 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;
}
}
请注意,这只是一个非常粗略的例子,可以帮助您找到正确的方向。希望它有所帮助