黑马程序员技术交流社区

标题: 下图如何通过代码实现? [打印本页]

作者: Geek_001    时间: 2014-6-20 21:32
标题: 下图如何通过代码实现?
本帖最后由 Geek_001 于 2014-6-21 00:01 编辑



作者: 江夷    时间: 2014-6-20 21:49
   这个用for循环,把毕老师讲的九九乘法表改改,应该就可以了
作者: 郑飞    时间: 2014-6-20 22:03
基础视频看懂了就会啦
作者: tiuwing    时间: 2014-6-20 22:21
简单的就这样,不过dos里面打印出来有点难看!
  1. class DrawRect
  2. {
  3.         int x,y;
  4.         public DrawRect(int x,int y)
  5.         {
  6.                 if(x<1||y<1)
  7.                         throw new RuntimeException("该矩形不存在!");
  8.                 this.x = x;
  9.                 this.y = y;
  10.         }
  11.         public void draw()
  12.         {
  13.                 for(int i=0;i<y+2;i++)
  14.                 {
  15.                         for(int j=0;j<x;j++)
  16.                         {
  17.                                 if(i==0||i==y+1)
  18.                                 {
  19.                                         System.out.print("-");
  20.                                 }
  21.                                 else if(j==0||j==x-1)
  22.                                 {
  23.                                         System.out.print("|");
  24.                                 }
  25.                                 else
  26.                                 {
  27.                                         System.out.print(" ");
  28.                                 }
  29.                         }
  30.                         System.out.println("");
  31.                 }
  32.         }
  33.         public static void main(String[] args)
  34.         {
  35.                 new DrawRect(4,6).draw();

  36.         }

  37. }
复制代码

作者: 卞新浩    时间: 2014-6-20 22:50
这就是简单的控制 打印模式把
作者: Geek_001    时间: 2014-6-20 23:22
卞新浩 发表于 2014-6-20 22:50
这就是简单的控制 打印模式把

不知道,我就是突然想到了,但用现在所学的嵌套循环自己倒腾不出来,就拿出来分享一下。
作者: Geek_001    时间: 2014-6-20 23:28
tiuwing 发表于 2014-6-20 22:21
简单的就这样,不过dos里面打印出来有点难看!

你是怎么想的?我想知道你思维的过程?求赐教

捕获.PNG (790 Bytes, 下载次数: 26)

确实挺难看滴.......

确实挺难看滴.......

作者: tiuwing    时间: 2014-6-21 00:18
过程也没啥啊!从要求中可以看出,要画的是一个矩形,一个双层for循环刚好可以画一个矩形。然后其他的只是在某些位置,画的形状不同而已,这步也只是在循环内部进行判断,根据不同的情况进行绘画就行啦!这个例子中,需要画的位置分别是第一行,最后一行,第一列,最后一列,而第一行和最后一行就是for循环中,第一层循环的首尾,也就是i的处于最小值,和最大值时,而第一列,最后一列则是第二层的首尾,就是j处于最大值和最小值!!!
作者: Geek_001    时间: 2014-6-21 00:20
tiuwing 发表于 2014-6-21 00:18
过程也没啥啊!从要求中可以看出,要画的是一个矩形,一个双层for循环刚好可以画一个矩形。然后其他的只是 ...

够我消化一阵了.............
作者: tiuwing    时间: 2014-6-21 00:22
Geek_001 发表于 2014-6-21 00:20
够我消化一阵了.............

不太会讲,讲得有点乱!
作者: Geek_001    时间: 2014-6-21 00:23
tiuwing 发表于 2014-6-21 00:22
不太会讲,讲得有点乱!

你有没发现你的思维比较清晰?那就够了
作者: Geek_001    时间: 2014-6-21 00:25
tiuwing 发表于 2014-6-21 00:22
不太会讲,讲得有点乱!

对了,哥们,你知道如何识别自己发帖的楼层吗?求赐教。
作者: tiuwing    时间: 2014-6-21 20:37
Geek_001 发表于 2014-6-21 00:25
对了,哥们,你知道如何识别自己发帖的楼层吗?求赐教。

额,这个没特意去留意过,都是系统提示有信息,然后点进去的!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2