我在JAVA做了一些初学者的任务。在FOR的帮助下,我将创建两个简单的三角形,只需将像*这样的简单字符添加到这样的字符串中:
*
**
***
****
*****
和
*****
****
***
**
*
我已经使用下面的代码完成了第一个三角形,也许它可以以更简单/更智能的方式完成?但我不知道如何创建以五个*?
开头的另一个三角形public class Test {
public static void main(String[] args) {
String word = "";
for (int x=1; x<5+1; x++){
word += "*";
System.out.println(word);
}
}
}
答案 0 :(得分:1)
您可以在不使用String
变量的情况下完成所有操作。为每一行使用一个循环,并为当前行中的星号数使用嵌套循环。当您在current
行时,您有6 - current
个星号。示例代码如下:
for (int row = 1; row <= 5; row++) {
for (int i = 1; i <= 6 - row; i++) {
System.out.print("*");
}
System.out.println();
}
答案 1 :(得分:0)
您可以创建一个“递减”循环计数器,如下所示:
for (int i = 5; i > 0; i--) {
// Do something
}
在循环中,您可以使用另一个循环来创建一串i
个星星,然后打印它。
答案 2 :(得分:0)
提示:使用相同的字符串word
,并要求substring(int,int)。请记住将返回值收集到旧字符串本身。你需要一个循环,直到字符串的长度为 0 。
答案 3 :(得分:0)
一种可能性是使用substring方法打印较长字符串的一部分:
public class Test {
public static void main(String[] args) {
String stars = "*****";
for (int x=4; x>=0; x--){
System.out.println(stars.substring(x));
}
}
}