| 闲的没事 刚学到二维数组 就顺便练习下 嘿嘿!!! 
 
 复制代码package com.itheima.com;
/**
 * 二维数组打印空心菱形.
 * 
 * @author WB
 * 
 */
public class LingXing {
        public static void main(String[] args) {
                lingXing(5);
        }
        static void lingXing(int num) {
                int i = num, j = num - 1;//初始化一个脚标值
                char[][] arr = new char[num * 2 - 1][num * 2 - 1];//定义一个二维数组,用来存放
                for (int x = 0; x < arr.length; x++) { //这个是打印左侧
                        if (x < num) {
                                i = i - 1;
                                arr[x][i] = '*';
                        } else {
                                i = i + 1;
                                arr[x][i] = '*';
                        }
                }
                for (int y = 1; y < arr.length - 1; y++) {//这个打印右侧
                        if (y < num) {
                                j = j + 1;
                                arr[y][j] = '*';
                        } else {
                                j = j - 1;
                                arr[y][j] = '*';
                        }
                }
                printArr(arr);
        }
        static void printArr(char[][] arr) { //打印数组函数
                for (int x = 0; x < arr.length; x++) {
                        for (int y = 0; y < arr.length; y++)
                                System.out.print(arr[x][y]);
                        System.out.println();
                }
        }
}
 |