我的代码有什么要需要优化的地方吗?我写的思路是否正确?
/*
输出九行由*构成的菱形
外层循环控制行数
外层循环执行一次代表内层循环已经全部执行了一次。(一行已结束)
内层循环控制列数
循环判断条件
总行数-当前行数=剩余行数 (是控制空格的输出
2当前行数-1 (奇数打印:1 3 5 7 9 每行个星号 )(三个都是控制星号的输出
2当前行数 (偶数打印:2 4 6 8 10 每行个星号)
1*当前行数 (打印:1 2 3 4 5 每行个星号(再输出语句里加个空格))
*/
//--------------------------------------------------------------
/*
后四行只要将外层循环做改变,循环体代码相同。
改变如下
for(int i=4;i>=1;i--){...} 此时的i每次递减。每行空格递增,星号递减。
*/
public static void main(String[] args){
//外层循环
for(int i=1;i<=5;i++){
//控制空格输出的内层循环
for(int j=1;j<=5-i;j++){
System.out.print(" ");
}
//控制星号输出的内层循环
for(int k=1;k<=2*i-1;k++){
System.out.print("*");
}
System.out.println();
}
//后四行外层循环
for(int i=4;i>=1;i--){
//控制空格的输出
for(int j=1;j<=5-i;j++){
System.out.print(" ");
}
//控制星号的输出
for(int k=1;k<=2*i-1;k++){
System.out.print("*");
}
System.out.println();
}
}
}