java打印图形
Ⅰ 用java输出以下图形,怎么做 * ** *** ****
实现思路:就是通过内层循环得到”*“的个数,外层循环控制换行。
for(int i=0;i<4;i++){
for(int j=0;j<=i;j++){
System.out.print("*");
}
System.out.println("");
}
备注:如果不想换行的话,直接去掉外层循环即可。
Ⅱ java打印图形
classTest{
publicstaticvoidmain(String[]args){
for(inti=0;i<17;i+=2){
if(i<8){
//0246
//4321
for(intj=0;j<4-i/2;j++){
System.out.print("");
}
System.out.println("*");
}
elseif(i==8){
for(intj=0;j<5;j++){
System.out.print("*");
}
System.out.println();
}
else{
//10121416
//3210
for(intj=0;j<9-i/2;j++){
System.out.print("");
}
System.out.println("*");
}
}
}
}
Ⅲ 如何用用java输入打出图形
你好提问者:
如果解决了你的问题请采纳,若有疑问请追问,谢谢!
packagecom.zyx.cn._show;
/**
*******
***$***
**$$$**
*$$$$$*
*/
publicclassSanJiaoShow{
publicstaticvoidmain(String[]args){
show(4);
}
publicstaticvoidshow(intnumber){
for(inti=0;i<number;i++){
//左侧倒三角
for(intj=i;j<number;j++){
System.out.print("*");
}
//中间$
if(i!=0){
//左侧
for(intj=i;j>0;j--){
System.out.print("$");
}
//右侧
if(i!=1){
for(intj=i;j>1;j--){
System.out.print("$");
}
}
}
//右侧三角
if(i==0){//第一行*打印number-1个
for(intj=1;j<number;j++){
System.out.print("*");
}
}else{//循环打印
for(intj=number;j>i;j--){
System.out.print("*");
}
}
System.out.println();
}
}
}
结果:
*******
***$***
**$$$**
*$$$$$*
当然你可以写5 ,6,7 易用性,可扩展。
Ⅳ java如何调用本地打印机进行图片打印
用java实现本地打印:java.awt中提供了一些打印的API,要实现打印,首先要获得打印对象,然后继承Printable实现接口方法print,以便打印机进行打印,最后用用Graphics2D直接输出直接输出。
下面代码实现了简单的打印功能:
importjava.awt.BasicStroke;
importjava.awt.Color;
importjava.awt.Component;
importjava.awt.Font;
importjava.awt.Graphics;
importjava.awt.Graphics2D;
importjava.awt.Image;
importjava.awt.Toolkit;
importjava.awt.RenderingHints;
importjava.awt.font.FontRenderContext;
importjava.awt.font.LineBreakMeasurer;
importjava.awt.font.TextAttribute;
importjava.awt.font.TextLayout;
importjava.awt.geom.Point2D;
importjava.awt.image.BufferedImage;
importjava.awt.print.Book;
importjava.awt.print.PageFormat;
importjava.awt.print.Paper;
importjava.awt.print.Printable;
importjava.awt.print.PrinterException;
importjava.awt.print.PrinterJob;
importjava.text.AttributedString;
importjavax.swing.JApplet;{
/**
*@paramGraphic指明打印的图形环境
*@paramPageFormat指明打印页格式(页面大小以点为计量单位,1点为1英才的1/72,1英寸为25.4毫米。A4纸大致为595×842点)
*@parampageIndex指明页号
**/
publicintprint(Graphicsgra,PageFormatpf,intpageIndex)throwsPrinterException{
System.out.println("pageIndex="+pageIndex);
Componentc=null;
//printstring
Stringstr="中华民族是勤劳、勇敢和富有智慧的伟大民族。";
//转换成Graphics2D
Graphics2Dg2=(Graphics2D)gra;
//设置打印颜色为黑色
g2.setColor(Color.black);
//打印起点坐标
doublex=pf.getImageableX();
doubley=pf.getImageableY();
switch(pageIndex){
case0:
//设置打印字体(字体名称、样式和点大小)(字体名称可以是物理或者逻辑名称)
//Java平台所定义的五种字体系列:Serif、SansSerif、Monospaced、Dialog和DialogInput
Fontfont=newFont("新宋体",Font.PLAIN,9);
g2.setFont(font);//设置字体
//BasicStrokebs_3=newBasicStroke(0.5f);
float[]dash1={2.0f};
//设置打印线的属性。
//1.线宽2、3、不知道,4、空白的宽度,5、虚线的宽度,6、偏移量
g2.setStroke(newBasicStroke(0.5f,BasicStroke.CAP_BUTT,BasicStroke.JOIN_MITER,2.0f,dash1,0.0f));
//g2.setStroke(bs_3);//设置线宽
floatheigth=font.getSize2D();//字体高度
System.out.println("x="+x);
//-1-用Graphics2D直接输出
//首字符的基线(右下部)位于用户空间中的(x,y)位置处
//g2.drawLine(10,10,200,300);
Imagesrc=Toolkit.getDefaultToolkit().getImage("D:\EclipseWorkSpace3.1\Kfc-wuxi\WebRoot\image\KFC.jpg");
g2.drawImage(src,(int)x,(int)y,c);
intimg_Height=src.getHeight(c);
intimg_width=src.getWidth(c);
//System.out.println("img_Height="+img_Height+"img_width="+img_width);
g2.drawString(str,(float)x,(float)y+1*heigth+img_Height);
g2.drawLine((int)x,(int)(y+1*heigth+img_Height+10),(int)x+200,(int)(y+1*heigth+img_Height+10));
g2.drawImage(src,(int)x,(int)(y+1*heigth+img_Height+11),c);
returnPAGE_EXISTS;
default:
returnNO_SUCH_PAGE;
}
}
publicstaticvoidmain(String[]args){
//通俗理解就是书、文档
Bookbook=newBook();
//设置成竖打
PageFormatpf=newPageFormat();
pf.setOrientation(PageFormat.PORTRAIT);
//通过Paper设置页面的空白边距和可打印区域。必须与实际打印纸张大小相符。
Paperp=newPaper();
p.setSize(590,840);//纸张大小
p.setImageableArea(10,10,590,840);//A4(595X842)设置打印区域,其实0,0应该是72,72,因为A4纸的默认X,Y边距是72
pf.setPaper(p);
//把PageFormat和Printable添加到书中,组成一个页面
book.append(newPrintTest(),pf);
//获取打印服务对象
PrinterJobjob=PrinterJob.getPrinterJob();
//设置打印类
job.setPageable(book);
try{
//可以用printDialog显示打印对话框,在用户确认后打印;也可以直接打印
//booleana=job.printDialog();
//if(a)
//{
job.print();
//}
}catch(PrinterExceptione){
e.printStackTrace();
}
}
}
Ⅳ 用java打印菱形。
一、整体实现思路:菱形9行9列可以将菱形分成上下两个三角形,分析每行空格数和星号个数的关系。
二、一个三角形的实现思路:以输出一个空心三角形为例:
(1)空格的输出按-1递减,字符的输出按等差数列,公差为2
(2)判断第一行和最后一行照常输出。
(3)中间行仅输出两个字符。
三、菱形分实心和空心两种,其代码及解析分别如下:
(一)实心菱形。
1、函数代码:
(5)java打印图形扩展阅读:
java打印的输出方式解析:
1、print():print就是一般的标准输出,但是不换行。
2、println():println和print基本没什么差别,就是最后会换行。
要分辨清楚System.out.print()和System.out.println()的区别。System.out.print()是单纯的输出,而System.out.println()的功能是输出内容后换行,到达下一行,在使用时要注意区分两者之间的不同。
Ⅵ 使用java语言中的for循环嵌套打印出以下图形,注释请详细
开发环境相关:已测试
Eclipse IDE for Java Developers
Version: Mars.2 Release (4.5.2)
完整代码如下:代码放置main()即可正确运行
staticvoidprint()
{//3个图基本一样的模式,写好第一个就可以稍作更改复制余下2个。
finalintline=4;//行数
charalpha='A';
System.out.println("打印图形一:");
for(inti=0;i!=line;i++)
{
for(intspac=line-i-1;spac!=0;spac--)//空格控制
System.out.print("");
for(intal=0;al!=2*i+1;al++)//1.3.5.7....公式循环输出
System.out.print((char)(alpha++));
System.out.println();//格式控制
alpha='A';
}System.out.println(" 打印图形二:");
for(inti=0;i!=line;i++)
{
for(intspac=line-i-1;spac!=0;spac--)
System.out.print("");
for(intal=0;al!=2*i+1;al++)
System.out.print((char)(alpha));
System.out.println();
alpha++;
}System.out.println(" 打印图形三:");
alpha='D';
for(inti=0;i!=line;i++)
{
for(intspac=line-i-1;spac!=0;spac--)
System.out.print("");
for(intal=0;al!=2*i+1;al++)
System.out.print((char)(alpha));
System.out.println();
alpha--;
}
Ⅶ 用Java程序打印图形
打印该图顺时针旋转90度后的图形的Java程序如下
Ⅷ (Java)请问怎么打印这个图形呀
按照你的要求打印圆点图形的Java程序如下(Math.abs()是求绝对值的函数)
public class F{
public static void main(String[] args){
int n=4;
for(int i=0;i<2*n+1;i++){
for(int j=0;j<Math.abs(n-i)+n+1;j++){
System.out.print("⚫");
}
for(int j=0;j<n-Math.abs(n-i);j++){
System.out.print("⚪");
}
System.out.println();
}
}
}
Ⅸ (Java)请问怎么打印这个图形啊
按照你的要求打印圆点图形的Java程序如下(Math.abs()是求绝对值的函数)
public class F{
public static void main(String[] args){
int n=4;
for(int i=0;i<2*n+1;i++){
for(int j=0;j<Math.abs(n-i);j++){
System.out.print("⚪");
}
for(int j=0;j<n+1;j++){
System.out.print("⚫");
}
for(int j=0;j<n-Math.abs(n-i);j++){
System.out.print("⚪");
}
System.out.println();
}
}
}
Ⅹ Java打印图形
双层for循环就够了 我刚开始写循环的时候用*花写过自己的名字,主要看你的会不会图形拆分
println(“* * **** * * ** ”)
println(“* * * * * * * ”)
println(“**** **** * * * * ”)
println(“* * * * * * * ”)
println(“* * **** **** ***** ** ”)
最简单的办法