本人在重新学习Java的过程中,遇到一个作业,就是用循环输出正三角,在完成作业之余,查看了很多网上的答案,用了好几次for循环,基本思路就是先拼接前面的空格,在去拼接后面的“”符号。感觉有点捉急,自己想了一想新的办法来更少的循环来得到答案。我利用一个if-else判断,以三角形顶点作为临界点,然后根据输出行数不同,拼接不同数量的空格和“”,分享代码,供大家参考。(一共两个例子,一个是正向的三角形,一个是等边三角形)
for (int i = 0; i < 10; i++) {
for (int k = 0; k < 9 + i; k++) {
if (k < 10 - i) {
System.out.print(" ");
} else {
System.out.print("* ");
}
}
System.out.println("nt");
}
输出结果如下:
下面是输出等边三角形的代码:
for (int i = 0; i < 10; i++) {
int n = 1;
for (int k = 0; k < 9 + i; k++) {
if (k < 10 - i) {
System.out.print(" ");
} else if (n % 2 == 1) {
n++;
System.out.print(" * ");
} else {
n++;
}
}
System.out.println("nt");
}
下面是执行结果图:
往期文章精选
- java一行代码打印心形
- Linux性能监控软件netdata中文汉化版
- 接口测试代码覆盖率(jacoco)方案分享
- 性能测试框架
- 如何在Linux命令行界面愉快进行性能测试
- 图解HTTP脑图
- 写给所有人的编程思维
- 测试之JVM命令脑图
- 将json数据格式化输出到控制台
- 如何测试概率型业务接口
- “双花”BUG的测试分享