我是编程新手,正在开发一个java程序,用户在该程序中输入字母单词的字符串消息,然后将字符串转换为2D单元格阵列。
我使用了一种方法将消息转换为一个0-1值的数组。下面是一个使用字母"E"的方法的例子
1111111
1000000
1000000
1000000
1111000
1000000
1000000
1000000
1111111
带1的条目表示二维数组中必须具有前景(红色)颜色的单元格,带0的条目表示背景(白色)颜色的
现在,我需要定义一个方法,它接受该方法返回的整数的2-Dim数组,然后返回Cells的2-Dim数组,其中0映射到白色单元格,1映射到红色单元格。
我不知道如何使用这种方法。我需要一个提示或一个正确的方向推动我开始。
编辑:
这是我迄今为止的代码:
公共DataManager(字符串消息){
for(int i = 0; i<message.length(); i++){
int[][] text = Alphabet.toIntArray(message.charAt(i));
}
我想弄清楚的是如何获得Alphabet.toIntArray方法返回的整数。
这就是我所说的"2D细胞阵列"
字符串"TURTLE"应为
在此处输入图像描述
您需要迭代数组中的每个值,为每个具有适当属性的值创建一个新的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;
}
}
请注意,这只是一个非常粗略的例子,可以给你一个正确的方向。希望它能帮助