使用 for 循环输出空心的菱形

输出空心的菱形图案,这在等级考试与公司面试时也出现过类似题目,本范例的目的在于熟练掌握 for 循环的嵌套使用。

创建 Diamond 类,在该类的主方法中调用 printHollowRhombus() 方法完成 10 行的空心菱形输出。其中 printHollowRhombus() 方法是在范例中自定义的,该方法使用两个双层 for 循环分别输出菱形的上半部分与下半部分。代码如下:

public class Diamond {
    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        printHollowRhombus(10);
    }

    public static void printHollowRhombus(int size) {
        // TODO 自动生成的方法存根
        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("");
        }
    }
}

 

posted @ 2016-04-07 10:59  u539f  阅读(1851)  评论(0编辑  收藏  举报