java - 如何使用while循环打印“*”n次?
问题描述
public class Hello {
public static void pattern() {
int s1 = 3;
while(s1 >= 1) {
System.out.println("*");
s1--;
}
}
public static void main(String [] args){
pattern();
}
}
实际输出:
*
*
*
预期输出:
* * *
* *
*
我想使用 while 循环打印“ * ”(如上面预期的输出)。我做了一个while循环来控制列数。我无法创建一个while循环来控制行在同一行输出“*”3次(下一行2次,依此类推)。
解决方案
只需一个循环和一些循环,String.repeat()
您就可以绘制您的图案
- 重复前导空格,starting 和 0,每轮再重复一个
- 根据 ong 重复该模式
s1
,3 次,然后 2 次,然后 1 次
public static void pattern() {
int s1 = 3;
int s2 = 0; // space counter
while(s1 >= 1) {
System.out.print(" ".repeat(s2));
System.out.println("* ".repeat(s1).trim()); // trim to remove last space
s1--;
s2++;
}
}
推荐阅读
- flutter - 使用 BlocBuilder 的首选方法是什么 - 如果我想在由其他小部件分隔的列中重建两个小部件?
- javascript - 无法运行 Jetifier,在 react-native 中找不到模块“哪个”错误
- html - 带有 CSS 的弹性项目之间的细箭头分隔符
- node.js - 为什么要发布 QueryRunner?
- mysql - 计算在几列范围内至少有两个肯定答案的行数
- sql - PostgreSQL 检索不到 24 小时
- awk - AWK 尝试将标量变量用作数组错误
- node.js - 在 ubuntu shell 中散列密码将与 nodejs bcrypt.hash 兼容
- symfony - 参数 #1 ($userProvider) 的类型必须是 ... UserProviderInterface
- reactjs - 使用三个 JS 库在 React JS 中引用 3D 对象