java语法基础(图形打印之三角形和菱形)
1、第一幅图形
直接上代码
package date01_test1;
public class PrintStar {
public static void main(String[] args) {
for(int i=1;i<5;i++) {
for(int j=0;j<2*i-1;j++) {
System.out.print("*");
}
System.out.println();
}
}
}
2、第二幅图形
思路:
星号的规律和图一相同,唯一变换的是每一行空格的数量;因此只需要找到星号前的空格数量与行数的规律;每行的空格数量按行数递减1,找到循环变量k和循环变量i的关系即可打印想要的空格数量;
package date01_test1;
public class PrintStar {
public static void main(String[] args) {
trangle();
}
public static void trangle() {
for(int i=1;i<5;i++) {
//打印空格
for(int k=0;k<(-1)*i+4;k++) {
System.out.print(" ");
}
//打印星号
for(int j=0;j<2*i-1;j++) {
System.out.print("*");
}
System.out.println();
}
}
}
执行结果:
3、第三幅图形
package date01_test1;
public class PrintStar {
public static void main(String[] args) {
diamond();
}
public static void diamond() {
for(int i=1;i<8;i++) {
if(i<=4) {
for(int k=0;k<(-1)*i+4;k++) {
System.out.print(" ");
}
for(int j=0;j<2*i-1;j++) {
System.out.print("*");
}
}else {
for(int k=0;k<i-4;k++) {
System.out.print(" ");
}
for(int j=(-2)*i+15;j>0;j--) {
System.out.print("*");
}
}
System.out.println();
}
}
}
执行结果:
以上为第一个冒出来的想法,有更加简便的方法后续再更新。