所以我正在尝试制作一个封装二维字符数组的类。特别是,我想做的是定义默认构造函数,以便封装的二维数组包含默认字符(在本例中为“#”)。我的问题:当我尝试通过嵌套的 foreach 循环系统地用默认字符填充数组时,编译器不承认我正在使用第二个嵌套循环的初始化字符参数 c,尽管我显然使用了赋值 c = '# '。引用 Eclipse,“未使用局部变量 c 的值”。
以下是相关代码:
public class 2DCharArr
{
private char[][] chars;
private byte length_x, length_y;
public 2DCharArr()
{
length_x = 10; length_y = 10;
chars = new char[length_x][length_y];
for (char[] arr : chars)
for (char c : arr)
c = '#'; // Does not signal to Eclipse that c was used.
}
}
我在 foreach 循环中的语法是否有问题,导致编译器无法确认我对 c 的使用?有人为我解决这个问题会很棒,因为它使我无法使用 foreach 循环来创建包含多维数组的对象,尽管我觉得如果我有能力的话我应该能够做到与语言。提前感谢您的洞察力!