编写循环,一次一个地将字符串添加到字符串

时间:2015-11-08 22:15:59

标签: java printing while-loop

我想写一个循环来在屏幕上打印一条双线(===),一次一个(=)。我还是Java新手,我现在正在练习循环。我希望我的结果看起来像这样:

     =
     ==
     ===
     ====

等等。

这是我到目前为止所拥有的。 。 。

    int twoLines = 0;
    while (twoLines < 10)
    { System.out.println("=");
    twoLines = twoLines + 1;
    }

我需要做些什么才能一次添加一个“=”?

我知道这对你们大多数人来说都是超级基础,但我仍然在想这些东西。提前感谢您的任何建议。

5 个答案:

答案 0 :(得分:0)

关键思想是在string循环内的每次迭代后修改要打印的while。这将有效:

int twoLines = 0;
String string = "=";
while (twoLines < 10)
{ 
    System.out.println(string);
    string = string + "=";
    twoLines = twoLines + 1;
}

答案 1 :(得分:0)

int twoLines = 1;

while (twoLines <= 10)
{ 
    int i = 1;
    while(i <= twoLines) {
        System.out.println("=");
        i = i + 1;
    }
    System.out.println(""); // next line
    twoLines = twoLines + 1;
}

答案 2 :(得分:0)

您可以使用两个循环来实现此目的。内环打印符号&#34; =&#34;外部循环打印一个新行。

    int i=0;
    while (i < 10) {
        int j=0;
        while (j < i){
            System.out.print("=");
            j++;
        }
        //print a new line
        System.out.println("\n");
        i++;
    }

答案 3 :(得分:0)

好的,您是否设法运行此代码并查看它打印的内容?

目前您的代码只是打印&#34; =&#34;每行一次,你能看到这个陈述如何

System.out.println("=");

永远不会改变?每次循环运行时,都会调用此语句,并使用相同的&#34; =&#34;在打印声明中。

我们需要一种方法来改变那个print语句,这样每次循环运行时,它打印的内容就不同了。

因此,如果我们存储&#34; =&#34;在变量和打印变量中,我们可以添加另一个&#34; =&#34;每次循环运行时到该变量。

int twoLines = 0;
string output = "="

while (twoLines < 10){

    // first print the output
    System.out.println(output);

    // then change the output variable, so that the next loop
    // prints a longer string
    output += "=";

    // then increment the twoLines variable
    twoLines++;
}

线;     输出+ =&#34; =&#34 ;; 是连接的一个捷径。连接是将字符串添加到一起的过程。使用&#39; + =&#39;运营商,我说我要添加字符串&#34; =&#34;到字符串输出的结尾。

线;     twoLines ++; 是递增变量的另一个小捷径。 &#39; ++&#39;运算符将1添加到变量中。

简而言之,您只想了解如何更改print语句以反映每次循环运行时要查看的更改。

答案 4 :(得分:0)

我不确定您是否希望在一行上打印=字符,一次一次迭代。如果是这种情况,那么您可能不想使用system.out.println(因为这会在每次调用时打印一个新行)。

首先,请注意,如果上述假设属实,那么这可能与以下SO问题重复:How can I print to the same line?

那就是说,也许这对你正在寻找的东西是一个天真的解决方案:

import java.util.concurrent.TimeUnit;
import java.lang.InterruptedException;

public class OneLine {
    public static void main(String[] args) throws InterruptedException {
        // Prints "="'s to the terminal window, one iteration at a time, 
        // on one line.
        int twoLines = 0;
        while (twoLines < 10) {
            System.out.print("=");
            twoLines = twoLines + 1;
            TimeUnit.MILLISECONDS.sleep(100);
        }
        System.out.println("");
    }
}