分析: 两个三角形组合而成,其中一个反转
取上面三角形的最后一行作为它们公用的一条边
public class Test {
public static void main(String[] args) {
for(int j = 1; j <= 4; j++) {
for(int i = 1; i <= (4-j); i++) {
System.out.print(" ");
}
//需要打印的就是(2*j)-1
for(int i = 1; i <= (2*j-1); i++) {
System.out.print("*");
}
System.out.println();
}
//打印反转的三角形
for(int j = 3; j >= 1; j--) {
for(int i = 1; i <= (4-j); i++) {
System.out.print(" ");
}
//需要打印的就是(2*j)-1
for(int i = 1; i <= (2*j-1); i++) {
System.out.print("*");
}
System.out.println();
}
}
}
打印结果
public class Test {
public static void main(String[] args) {
for(int j = 1; j <= 4; j++) {
for(int i = 1; i <= (4-j); i++) {
System.out.print(" ");
}
//
for(int i = 1; i <= (2*j-1); i++) {
//每当第一次循环和最后一次循环
if(i==1 || i == (2*j)-1) {
//什么时候输出"*"
System.out.print("*");
}else {
//什么时候输出" "
System.out.print(" ");
}
}
System.out.println();//换行
}
for(int j = 3; j >= 1; j--) {
for(int i = 1; i <= (4-j); i++) {
System.out.print(" ");
}
for(int i = 1; i <= (2*j-1); i++) {
if(i==1 || i == (2*j)-1) {
System.out.print("*");
}else {
System.out.print(" ");
}
}
System.out.println();//换行
}
}
}
打印结果