字符串连接有问题

时间:2015-06-14 00:22:21

标签: java

我试图将字符串连接到自身+其他东西,如下所示:

String example = " "
for (int i = 0; i < 5; i++) {
    if (condition OK) {
        example = example + "\nAnother text";
    }
}
JOptionPane.showMessageDialog(null, example);

在我看来,它应该打印&#34; (新行)另一个文字&#34;但它似乎只适用于我的&#34;另一个文本&#34;中的最后一个条目。就像,如果&#34; for&#34;循环可以3次,打印&#34; (新行)另一篇文章(3)&#34;而不是&#34; (新行)另一个文本(1)(新行)另一个文本(2)...

对可能发生的事情有所了解?

编辑:在意识到我的代码没问题后,我按照afzalex推荐,发现错误是在我的情况下。谢谢兄弟

2 个答案:

答案 0 :(得分:0)

我使用下面的程序我得到了预期的输出。

    String example = " ";
    for (int i = 0; i < 5; i++) {
        if (i == 1 || i == 3) {
            example = example + "\nAnother text";
        }
    }
    System.out.println(example);

输出:

Another text
Another text

所以,JOptionPane.showMessageDialog(null, example);可能会出现问题。如果最终将其解释为HTML,那么最好使用</br>代替\n,这会给你一个新线

答案 1 :(得分:0)

您提供的代码几乎可以。要跟踪make循环的数量,只需简单地连接字符串变量和循环迭代器。

    String ex = " ";
    for(int i=0;i<5;i++){
        if(true){
            ex = ex + "\nSumting"+i;
        }
    }
    System.out.println(ex);
    JOptionPane.showMessageDialog(null, ex);

上面的代码在控制台和消息对话框中给出了预期的输出。