java输出一个空心菱形方法(详细注释)

来源:互联网 发布:牛头酋长wq二连优化 编辑:程序博客网 时间:2024/05/17 06:48
package test0808;


import org.junit.Test;


/*
 * 输出一个空心菱形,行数手动控制
 * 
 * 
 * 
 */
public class diamond {
//控制输入空格
public static void setblank(int num_blank){
for(int num = 1;num<=num_blank;num++){
System.out.print(" ");
}
}
//控制输入外边框
public static void setBorder(int num_border,char type_border){
//判断边框像素,大于1时两边输出符号,中间输出空格,达到空心的目的
if(num_border==1){
System.out.print(type_border);
}else{
System.out.print(type_border);
for(int num =1;num<=num_border-2;num++){
System.out.print(" ");
}
System.out.print(type_border);
}
}
//控制输入换行
public static void setEnter(){
System.out.println();
}
//控制输入空心菱形

public static void setDiamond(int num_height,char type_border){
int num_border=1;
int num_botton_border=2*(num_height-1)-1;
//num_height控制菱形高度,type_border控制外边框组成元素
//打出空心菱形上半部分
for(int num=1;num<=num_height;num++){
//输出空格
setblank(num_height-num);
//输出符号
setBorder(num_border, type_border);
num_border+=2;
//输出换行
setEnter();


}
//打出空心菱形下半部分
for(int num=num_height+1;num<=2*num_height-1;num++){
//输出空格
setblank(num-num_height);
//输出符号
setBorder(num_botton_border, type_border);
num_botton_border-=2;
//输出换行
setEnter();
}


}



public static void main(String[] args) {
setDiamond(8,'A');


}


}
原创粉丝点击