小生活网 > 教育培训 > 电脑培训

长春千锋Java培训技术分享:如何使用Java编程打印图形?

发布:2019年07月29日编号:2056-478507
小生活网提醒您:1、在办理服务前请确认对方资质, 夸大的宣传和承诺不要轻信!2.任何要求预付定金、汇款至个人银行账户等方式均存在风险,谨防上当受骗!
详细描述

在我们的实际工作中,经常需要实现打印功能小+百+姓+网。但由于历史原因,Java提供的打印功能一直都比较弱小百姓网。实际上当初的jk根本不支持打印,直到jilk1.1才引入了很轻量的打印支持NcMw

本文将由千锋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循环的嵌套循环完成,外层循环控制行数,内层循环控制列数MYG

分析代码示例:

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θ),据说这是笛卡尔死前寄出的最后一封情书的内容,这里面隐藏着一个刻骨铭心的秘密:“一生只为等待能手绘这个函数给我的人”欢迎www.xbaixing.com。心形函数要做直角坐标系转换,然后投影到xOy平面上,就可以调用画椭圆方法来实现画心形图案www.xbaixing.com

 

分析代码示例:

import java.applet.Applet;

import java.awt.Color;

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 * Math.cos(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开发www.xbaixing.com小百姓网

 

千锋教育:http://www.mobiletrain.org/

千锋哈尔滨校区:***

哈尔滨校区地址:哈尔滨市松北区创新一路699号科技创新城19号楼五楼

培训咨询专线:17710405956

   QQ  : 1240739179   联系人:安老师

面授课程:全栈Web开发+培训、全链路设计培训、PHP全栈+服务器集群培训、JavaEE+分布式开发培训、大数据+人工智能培训、 Unity游戏开发培训、Python培训、云计算+Python运维培训、全栈软件测试培训、Android培训、iOS培训、好程序员

 


展开更多描述 ↓
shiji104 注册时间:2019年07月29日
该用户还发布了
精选信息
热门信息
在线留言 发送短信 拨打电话