太原列举网 > 教育培训 > 其他教育培训 > 太原千锋Java培训技术分享 如何使用Java编程打印图形
太原
[切换城市]

太原千锋Java培训技术分享 如何使用Java编程打印图形

更新时间:2020-03-22 15:58:01 浏览次数:91次
区域: 太原 > 阳曲
在我们的实际工作中,经常需要实现打印功能。但由于历史原因,Java提供的打印功能一直都比较弱。实际上当初的jk根本不支持打印,直到jilk1.1才引入了很轻量的打印支持。
本文将由千锋Java培训机构讲师通过一些具体的程序实例来说明如何使用Java编程打印图形?
1、如何打印出一个三角形?
 
分析代码示例:
public class Test {
     public static void main(String[] args) {
           // 打印一个4行的三角形
           // 外层循环打行
           for (int i = 1; i <= 4; i++) {
                 // 打空格
                 for (int k = 1; k <=4-i; k++) {
                       System.out.print(" ");// 注意此处输出不换行
                 }
                 // 内层循环打列
                 for (int j = 1; j <= i*2-1; j++) {
                       // 每循环一次打一个*
                       System.out.print("*");// 注意此处不换行,每次打到一行上面
                 }
                 // 每打完一行就换行
                 System.out.println();
           }
     }
}
2、如何打印出一个矩形?
比如我们要打印一个4行5列的矩形:首先我们要控制行数和列数,使用for循环的嵌套循环完成,外层循环控制行数,内层循环控制列数。
分析代码示例:
public class Test {
     public static void main(String[] args) {
           // 打印一个4行5列的矩形
           // 外层循环打行
           for (int i = 1; i <= 4; i++) {
                 // 内层循环打列
                 for (int j = 1; j <= 5; j++) {
                       // 每循环一次打一个*
                       System.out.print("*");// 注意此处不换行,每次打到一行上面
                 }
                 // 每打完一行就换行
                 System.out.println();
           }
     }
}
3、如何打印出一个心形图案?
心形图案的实现,重点是心形函数r=a(1–sinθ),据说这是笛卡尔死前寄出的后一封情书的内容,这里面隐藏着一个刻骨铭心的秘密:“一生只为等待能手绘这个函数给我的人”。心形函数要做直角坐标系转换,然后投影到xOy平面上,就可以调用画椭圆方法来实现画心形图案。

分析代码示例:
import java.applet.Applet;
import java.aw***lor;
import java.awt.Graphics;
import java.awt.Image;

public class First extends Applet
{
        int width, height;
        Image image;                                    //缓冲区对象
        Graphics g1;  
        public void init()                                    //Applet初始化时调用
        {
              setBackground(Color.black);                        //设置背景
              this.setSize(350, 310);

              width = getSize().width;                        //获得窗口宽度
              height = getSize().height;
              image = createImage(width, height);                  //创建图像对象
              g1 = image.getGraphics();
        }
        public void paint(Graphics g)                        //绘图方法
        {
              g1.clearRect(0, 0, width, height);
              g1.setColor(Color.blue);
             
              for(int i = 0; i <= 90; i++)            //控制横向变化
                         for(int j = 0; j <= 90; j++)      //控制竖向变化
                         {
                          //转换为直角坐标
                        double r = Math.PI / 45 * i * (1 - Math.sin(Math.PI / 45 * j)) * 18;
                        double x = r * Mat***s(Math.PI / 45 * j) * Math.sin(Math.PI / 45 * i) + width / 2;   //为了在中间显示,加了偏移量
                        double y = -r * Math.sin(Math.PI / 45 * j) + height / 4;//为了在中间显示,加了偏移量
                        g1.fillOval((int) x, (int)y, 2,2);      //绘制点
                         }
              //显示缓存区的可变Image对象
              g.drawImage(image, 0, 0, this);
        }
     }

学习java开发,可以参考千锋提供的java学习路线,该学习路线罗列了各阶段完整的java学习知识,根据千锋提供的java学习路线图,可以让你对学好java开发需要掌握的知识有个清晰的了解,并能快速入门java开发。

太原其他教育培训相关信息
1天前
11月22日
11月20日
11月17日
11月14日
11月12日
11月2日
11月1日
10月31日
注册时间:2017年01月05日
UID:349452
---------- 认证信息 ----------
手机已认证
查看用户主页