近日闲来无事,想回顾一下java方面的基本知识,遇到一个及其简单的问题,如何打印一个菱形,但是总感觉不是特别优雅。。。
所以我这边先抛砖引玉 希望大神们多多指教
public class Rhombus {
public static void main(String[] args) {
int total_row = 9; // 总共要打印菱形的行数.只能是奇数
for (int row = 1; row <= total_row; row++) {
// 打印空格的个数 Math.abs(num)表示取绝对值,例子:Math.abs(-1),调用该方法返回的是1
int space_num = Math.abs((total_row + 1) / 2 - row);
for (int j = 0; j < space_num; j++) {
System.out.print(" ");
}
// 打印*的个数
int star_num = total_row - space_num * 2;
for (int i = 0; i < star_num; i++) {
System.out.print("*");
}
// 打印一行 后需要换行
System.out.println();
}
}
}