用代码写一个树的图形怎么写?

for循环能用吗?

public static void main(String[] args) {

    TestClass tc = new TestClass();

    System.out.println("需要的圣诞树的大小:");

    Scanner input = new Scanner(System.in);

    int a = input.nextInt();

    tc.Tree(2 * a);

}

public void Tree(int n) {

    int i, j, k, m;

    for (i = 1; i <= n / 2; i++) {

        for (j = 1; j < n / 2 + i; j++) {

            if (j <= n / 2 - i)

                System.out.print(" ");

            else {

                if (j % 2 == 0)

                    System.out.print("*");

                else

                    System.out.print("*");

            }

        }

        System.out.print("\n");

    }

    for (k = n / 2 + 1; k <= n - n / 4; k++) {

        for (m = 1; m <= n + 1; m++) {

            if (m != n / 2)

                System.out.print(" ");

            else

                System.out.print("|");

        }

        System.out.print("\n");

    }

}[code="java"][/code][code="java"][/code]

[code="java"]
public class App {

/** 
 * @author: lance
 * @Title: main 
 * @param args
 * @return: void
 */
public static void main(String[] args) {
    int treeHeight = 10;
    char treeChar = 'A';

    for (int h=1; h <= treeHeight; h++) {

        for (int sp=1; sp <= treeHeight-h; sp++) {
        System.out.print(" ");
        }

        for (int t=1; t <= (2*h - 1); t++) {
        System.out.print(treeChar);
        }
        System.out.println();
    }


    for (int tr=1; tr <= treeHeight/4; tr++) {
        for (int sp=1; sp <= treeHeight - 2; sp++) {
        System.out.print(" ");
        }
        System.out.print(treeChar);
        System.out.print(treeChar);
        System.out.println(treeChar);
    }
}

}

[/code]