常规思路:
- 将菱形输出拆分为上下两部分
- 上半部分两重for循环, 下半部分两重for循环,观察实现代码,我们不难发现该实现思路造成了很多代码冗余
/**
* Description: 打印实心的菱形
*
* @param row 菱形的行数
* @author Finley-Xio
* date: 2020/2/8 22:52
*/
public static void printSolidRhombus(int row) {
for (int i = 1; i <= row; i++) {
// 打印菱形上半部分
if (i <= (row / 2 + 1)) {
for (int j = 1; j <= (row / 2 + 1 - i); j++) {
System.out.print(' ');
}
for (int k = 1; k <= (2 * i - 1); k++) {
System.out.print('*');
}
System.out.println();
// 打印菱形下半部分
} else {
for (