這樣可以
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、成都網(wǎng)站建設(shè)、神農(nóng)架林區(qū)網(wǎng)絡(luò)推廣、成都小程序開發(fā)、神農(nóng)架林區(qū)網(wǎng)絡(luò)營(yíng)銷、神農(nóng)架林區(qū)企業(yè)策劃、神農(nóng)架林區(qū)品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供神農(nóng)架林區(qū)建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
public?static?void?main(String[]?args)?{
String[]?temps?=?{"A","B","C","D","E","F","G"};
for?(int?i?=?1;?i?=?temps.length;?i++)?{
for(int?j?=?temps.length;?j??i;?j--){???
System.out.print("?");???
}
for?(int?j?=?0;?j??i*2-1;?j++)?{
??System.out.print(temps[i-1]);
}
System.out.println();
}
}
運(yùn)行結(jié)果
A
BBB
CCCCC
DDDDDDD
EEEEEEEEE
FFFFFFFFFFF
GGGGGGGGGGGGG
class?Tester?{
public?static?void?main(String[]?args)?{
int?t?=?1;
int?max?=?15;
int?hgap?=?2;
int?vgap?=?1;
int?line?=?5;
for?(int?k?=?0;?k??line;?k++)?{
int?tmp?=?hgap;
for?(int?i?=?t;?i?=?max;?i?+=?hgap++)?{
System.out.print(i?+?"?");
}
hgap?=?++tmp;
t?+=?vgap++;
max--;
}
}
}
用java實(shí)現(xiàn)本地打印:java.awt中提供了一些打印的API,要實(shí)現(xiàn)打印,首先要獲得打印對(duì)象,然后繼承Printable實(shí)現(xiàn)接口方法print,以便打印機(jī)進(jìn)行打印,最后用用Graphics2D直接輸出直接輸出。
下面代碼實(shí)現(xiàn)了簡(jiǎn)單的打印功能:
import?java.awt.BasicStroke;
import?java.awt.Color;
import?java.awt.Component;
import?java.awt.Font;
import?java.awt.Graphics;
import?java.awt.Graphics2D;
import?java.awt.Image;
import?java.awt.Toolkit;
import?java.awt.RenderingHints;
import?java.awt.font.FontRenderContext;
import?java.awt.font.LineBreakMeasurer;
import?java.awt.font.TextAttribute;
import?java.awt.font.TextLayout;
import?java.awt.geom.Point2D;
import?java.awt.image.BufferedImage;
import?java.awt.print.Book;
import?java.awt.print.PageFormat;
import?java.awt.print.Paper;
import?java.awt.print.Printable;
import?java.awt.print.PrinterException;
import?java.awt.print.PrinterJob;
import?java.text.AttributedString;
import?javax.swing.JApplet;
public?class?PrintTest???implements?Printable{
/**
*?@param?Graphic指明打印的圖形環(huán)境
*?@param?PageFormat指明打印頁(yè)格式(頁(yè)面大小以點(diǎn)為計(jì)量單位,1點(diǎn)為1英才的1/72,1英寸為25.4毫米。A4紙大致為595×842點(diǎn))
*?@param?pageIndex指明頁(yè)號(hào)
**/
public?int?print(Graphics?gra,?PageFormat?pf,?int?pageIndex)?throws?PrinterException?{
System.out.println("pageIndex="+pageIndex);
Component?c?=?null;
//print?string
String?str?=?"中華民族是勤勞、勇敢和富有智慧的偉大民族。";
//轉(zhuǎn)換成Graphics2D
Graphics2D?g2?=?(Graphics2D)?gra;
//設(shè)置打印顏色為黑色
g2.setColor(Color.black);
//打印起點(diǎn)坐標(biāo)
double?x?=?pf.getImageableX();
double?y?=?pf.getImageableY();
switch(pageIndex){
case?0:
//設(shè)置打印字體(字體名稱、樣式和點(diǎn)大?。ㄗ煮w名稱可以是物理或者邏輯名稱)
//Java平臺(tái)所定義的五種字體系列:Serif、SansSerif、Monospaced、Dialog?和?DialogInput
Font?font?=?new?Font("新宋體",?Font.PLAIN,?9);
g2.setFont(font);//設(shè)置字體
//BasicStroke???bs_3=new???BasicStroke(0.5f);???
float[]???dash1???=???{2.0f};?
//設(shè)置打印線的屬性。
//1.線寬?2、3、不知道,4、空白的寬度,5、虛線的寬度,6、偏移量
g2.setStroke(new???BasicStroke(0.5f,???BasicStroke.CAP_BUTT,???BasicStroke.JOIN_MITER,???2.0f,???dash1,???0.0f));??
//g2.setStroke(bs_3);//設(shè)置線寬
float?heigth?=?font.getSize2D();//字體高度
System.out.println("x="+x);
//?-1-?用Graphics2D直接輸出
//首字符的基線(右下部)位于用戶空間中的?(x,?y)?位置處
//g2.drawLine(10,10,200,300);?
Image?src?=?Toolkit.getDefaultToolkit().getImage("D:\\EclipseWorkSpace3.1\\Kfc-wuxi\\WebRoot\\image\\KFC.jpg");
g2.drawImage(src,(int)x,(int)y,c);
int?img_Height=src.getHeight(c);
int?img_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);
return?PAGE_EXISTS;
default:
return?NO_SUCH_PAGE;
}
}
public?static?void?main(String[]?args)?{
//????通俗理解就是書、文檔
Book?book?=?new?Book();
//????設(shè)置成豎打
PageFormat?pf?=?new?PageFormat();
pf.setOrientation(PageFormat.PORTRAIT);
//????通過Paper設(shè)置頁(yè)面的空白邊距和可打印區(qū)域。必須與實(shí)際打印紙張大小相符。
Paper?p?=?new?Paper();
p.setSize(590,840);//紙張大小?
p.setImageableArea(10,10,?590,840);//A4(595?X?842)設(shè)置打印區(qū)域,其實(shí)0,0應(yīng)該是72,72,因?yàn)锳4紙的默認(rèn)X,Y邊距是72
pf.setPaper(p);
//????把?PageFormat?和?Printable?添加到書中,組成一個(gè)頁(yè)面
book.append(new?PrintTest(),?pf);
//獲取打印服務(wù)對(duì)象
PrinterJob?job?=?PrinterJob.getPrinterJob();??????
//?設(shè)置打印類
job.setPageable(book);
try?{
//可以用printDialog顯示打印對(duì)話框,在用戶確認(rèn)后打??;也可以直接打印
//boolean?a=job.printDialog();
//if(a)
//{????????
job.print();
//}
}?catch?(PrinterException?e)?{
e.printStackTrace();
}
}
}
class Test{
public static void main(String [] arg){
Test test = new Test();
test.OutPut(50 , 9); /*第一個(gè)參數(shù)50為你要輸出的最大數(shù),你改成30就是輸出1-30的數(shù),50則為輸出1-50*/
/*第二個(gè)參數(shù)9,就是控制你換行的值,你改成10就是每輸出10個(gè)字就換行一次*/
} public void OutPut(int length , int size){
int temp = 1;
for(int i = 1 ; i = length ; i ++ ,temp ++){
System.out.print(i+"\t");
if(temp % size == 0){
System.out.println();
}
}
}
} 將上面的代碼保存成為Test.java文件(其實(shí)后綴為java的就行了),編譯就能運(yùn)行了。