java二维数组赋值问题

for(;i<2*a+1;i++){for(;j<2*a+1;j++)b[i][j]=“*”;}为什么只有b[0][j]那一列有,其他没有?????Scannerin=n... for (; i < 2 * a +1; i++)
{
for (; j < 2 * a+1; j++)
b[i][j]=“*”;
}
为什么只有b[0][j]那一列有,其他没有?????
Scanner in=new Scanner(System.in);
int a=in.nextInt();
String [][]b=new String [2*a+1][2*a+1];
int i=0,j=0;

for (; i < 2 * a +1; i++)
{
for (; j < 2 * a+1; j++)
b[i][j]="*";
}
相输出一个星矩形
展开
 我来答
百度网友c0ad3a8
推荐于2016-07-20 · 超过35用户采纳过TA的回答
知道答主
回答量:69
采纳率:0%
帮助的人:99.8万
展开全部
上面的代码除去语法的问题不说,基本没有上下文,所以完全看不出是哪出了问题。请你把代码贴全才能帮你解答问题,好吗?

因为j在i=0的外层循环中已经到了最大值,于是i=1时j的循环不会执行。
所以以后千万别犯这个错,最好是在for里面声明循环变量。

用下面的代码就可以了。
Scanner in = new Scanner(System.in);
int a = in.nextInt();
String[][] b = new String[2 * a + 1][2 * a + 1];

for (int i = 0; i < 2 * a + 1; i++) {
for (int j = 0; j < 2 * a + 1; j++) {
b[i][j] = "*";
}
}

for (int i = 0; i < 2 * a + 1; i++) {
for (int j = 0; j < 2 * a + 1; j++)
System.out.print(b[i][j]);
System.out.println();
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
飞翔的香蕉皮
2010-10-15 · 超过13用户采纳过TA的回答
知道答主
回答量:49
采纳率:0%
帮助的人:36.1万
展开全部
有详细代码吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
afei20081122
2010-10-15 · TA获得超过208个赞
知道小有建树答主
回答量:547
采纳率:0%
帮助的人:191万
展开全部
你的a=多少?

你用 System.out.println(i)把I,打出来看看,没有变化;跟踪一下;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式