利用循环打印图形

1.打印金字塔。
 public class OutGoldWord {
    public static void main(String[] args) {
        int n=5;
        for(int i=1;i<=n;i++){
            int times=2*i-1;
            int time=0;
            while(time!=(n-i)){
                System.out.print(" ");
                time++;
            }
            while(times!=0){
                System.out.print("*");
                times--;
            }
            System.out.println();
        }
    }
}

2.实心菱形
public class Test {

	public static void main(String[] args) {
		for(int i=0;i<=3;i++){
			for(int j=0;j<3-i;j++){
				System.out.print(" ");
			}
			for(int k=0;k<2*i+1;k++){
				System.out.print("*");
			}
			System.out.println();
		}
		for(int i=0;i<3;i++){
			for(int k=0;k<=i;k++){
				System.out.print(" ");
			}
			for(int j=0;j<5-2*i;j++){
				System.out.print("*");
			}
			System.out.println();
		}
	}

}

3.空心菱形

---方法1

public class DiamondTest {

	/**打印空心菱形
	 * @param args
	 */
	public static void main(String[] args) {
		int size=10;
		if(size%2==0){
			size++;
		}
		for(int i=0;i<size/2+1;i++){
			for(int j=size/2+1;j>i+1;j--){
				System.out.print(" ");   //输出左上角位置的空白
			}
		
		for(int j=0;j<2*i+1;j++){
			if(j==0||j==2*i){
			System.out.print("*");  //输出菱形上半部边缘
			}else{
				System.out.print(" ");   //输出菱形下半部空心
		    }
	      }
		System.out.println(" ");
		}
		for(int i=size/2+1;i<size;i++){
			for(int j=0;j<i-size/2;j++){
				System.out.print(" ");//输出菱形左下角空白
			}
			for(int j=0;j<2*size-1-2*i;j++){
				if(j==0||j==2*(size-i-1)){
					System.out.print("*");//输出菱形下半部边缘
				}else{
					System.out.print(" ");//输出菱形下半部空心
				}
			}
			System.out.println("");
		}
	}
}
---方法2

/**
 * @author fcs
 * 打印空心菱形
 * 2014-10-7
 */
public class Test {
	public static void main(String[] args) {
		for(int i=0;i<6;i++){//首先打印上面6行
			for(int j=0;j<5-i;j++){//找出左上部分每行空白与行数的关系
				System.out.print(" ");
			}
			System.out.print("*");//空白结束用*封尾
			for(int k=0;k<2*i-1;k++){//每行两个*之间的空白与行数的关系
				System.out.print(" ");
			}
			if(i>0)
			System.out.print("*");//除第一行之外,剩下的几排末尾都有一个星号
			System.out.println();
		}
		for(int i=0;i<5;i++){//处理下面4行
			for(int j=0;j<i+1;j++){//原理同上
				System.out.print(" ");
			}
			System.out.print("*");
			for(int k=0;k<8-2*i-1;k++){
				System.out.print(" ");
			}
			if(i<4)
			System.out.print("*");
			System.out.println();
		}
	}
}


================================== 赵客缦胡缨,吴钩霜雪明。 银鞍照白马,飒沓如流星。 ==================================
原文地址:https://www.cnblogs.com/lucare/p/9312692.html