求解释这代码的意思,之前发图不清晰抱歉了

package javatext;

public class BBU {

public static void main(String[] args) {
    // 总行数,可以修改
    int row = 7;
    // 每一行的*符号数量
    int dollarNumber;
    // 追加的空格数量
    int spaceNumber;
    String dollar = "*";
    for (int i = 1; i <= row; i++) {
        // 每一行输出的字符
        String printString = "";
        /*
         * 判断行数是否超过了一半,超过一半*符号开始减少
         */
        if (i * 2 - 1 > row) {
            // 行数超过一半的情况
            dollarNumber = (row - i) * 2 + 1;
            spaceNumber = (row - dollarNumber) / 2;
        } else {
            // 行数没超过一半的情况
            dollarNumber = i * 2 - 1;
            spaceNumber = (row - dollarNumber) / 2;
        }
        //追加空格
        for (int j = 0; j < spaceNumber; j++) {
            printString += " ";
        }
        //追加*符号
        for (int j = 0; j < dollarNumber; j++) {
            printString += dollar;
        }
        System.out.println(printString);
    }
}            

}

```![图片说明](https://img-ask.csdn.net/upload/201612/06/1481001569_365576.png)
画线的地方(“ int spaceNumber;”“int dollarNumber”)我不太明白它在里面的意思代表了什么,旁边的注释也有点搞不明白!

不太懂(“ int spaceNumber;”“int dollarNumber”)在里面表达的作用

这是打印一个星号的形状的吧,你运行试试不就知道了?

这是打印一个菱形的星图案。如图:
0001
00111
011111
1111111
011111
00111
0001
0表示空格,1表示*。打印出来的就是1显示的部分。