输出空心的菱形,在面试或者考试中也会出现,百度上的都没有详解,下面附上代码详解
public class Diamond {
public static void main(String[] args) {
printHollowRhombus(10);//调用下面的函数,输入参数
}
public static void printHollowRhombus(int size){
if(size%2==0){
size++;//菱形不能为奇数.+1为偶数
}
for (int i=0;i
for(int j=size/2+1;j>i+1;j--){//当i=0时循环第一行,j初始值为6递减
// *号位置依次为654321,即i=0时,j循环到5结束
System.out.print("1");//将空格换成1
}
for (int j=0;j<2*i+1;j++){//当第一个for循环完时输出一个*,即j=0时,第一行第6位为*
if (j==0||j==2*i){
System.out.print("*");//后面每一行的*号位置为54321,当i每增加1,,每行的数量加1
}else{
System.out.print("1");//j从0开始递增,每当j为i的2倍时,为当前行数的最后一位
}
}
System.out.println("");//即输出最后一位*,换行
}
//菱形下部分
for (int i=size/2+1;i
for (int j=0;j
System.out.print("1");
}
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("1");
}
}
System.out.println("");
}
}
}
输出结果为
将1换成空格