黑马程序员技术交流社区
标题:
一段小代码练习 有一个地方不是很明白 求解 有图 有代码
[打印本页]
作者:
wxw19910324
时间:
2016-1-4 16:08
标题:
一段小代码练习 有一个地方不是很明白 求解 有图 有代码
class ArrayTest
{
public static void main(String[] args)
{
for (int x=0; x<5; x++)
{
for (int y=x; y<5; y++)
{
System.out.print("-");
}
for (int z=0; z<=x; z++)
{
System.out.print("* ");
}
System.out.println(); //这个位置为什么一定要输出这个代码 才能打印出自己想要的结果
}
}
}
QQ截图20160104160255.png
(4.12 KB, 下载次数: 18)
下载附件
2016-1-4 16:06 上传
写了 这个代码以后 System.out.println();
作者:
yi651312197
时间:
2016-1-4 16:28
那个带了“ln”是换行的意思,因为前面的没换行。
作者:
黑色皮肤的马
时间:
2016-1-4 16:41
首先,这是个for循环的潜逃。外循环控制行,内循环控制列的。你的代码中的内循环也是两个for循环组成的。举例:当x=0时,进入到内循环中后,先执行第一个for循环,判断0<5,然后输出了一个-,再继续循环,总共输出了5个-。这样内循环的第一个for循环就结束了,但是内循环还有第二个for循环。继续执行。z=0,0<=1,所以输出一个* ,然后z变成1,1<=1,又输出了一个* 。到此为止,第一次内循环才真正的结束。紧接着执行System.out.println();这句代码是换行的意思。因为一次完整的内循环已经结束了,紧接着要进行下一次循环了,这时候加个换行,才能输出那种倒三角或者正三角的形状,不加这行代码的话,那么输出的所有-和*都将打印在一行中。
作者:
黑色皮肤的马
时间:
2016-1-4 16:47
Sorry,刚才手误,打了一个小错误。对于x=0,第一次内循环中的第二个for循环,z=0,z<=0,所以输出一次*,然后z变成1,1不小于等于0,所以只输出一个*,至此第一次内循环才结束,然后就是刚才后面的解释了。不好意思了。
作者:
shenfuhan
时间:
2016-1-4 18:33
打印一个菱形的代码怎么写
作者:
549208564
时间:
2016-1-5 13:43
转行作用,如果不换行就打印在一行
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2