【问题标题】:Inconsistent with StringBuilder append in a loop与 StringBuilder 在循环中追加不一致
【发布时间】:2017-09-29 06:04:35
【问题描述】:

我在循环中使用下面的 StringBuilder 时遇到问题,因为输出不一致。请帮忙!!!

String oldStr = "job1.job2.job3";
String[] newStr = oldStr.split(Pattern.quote("."));
StringBuilder result = new StringBuilder();
for (String temp : newStr) {    
    String key = "This is "+keyStr+" ,";
    result.append(key);
    System.out.println(key.toString());
}

我希望结果是

This is job1.  
This is job1.  This is job2.
This is job1.  This is job2.  This is job3.

我确实在某一时刻看到了预期的结果,但现在我看到了这些:

This is job1.  
This is job2.  
This is job3.

如果我继续运行代码,我会看到多个元素:

This is job1.  
This is job2.  
This is job3.
This is job1.  
This is job2.  
This is job3.

我的代码是否存在问题或 StringBuilder 的行为不正确? TIA。

【问题讨论】:

    标签: loops append iteration stringbuilder


    【解决方案1】:

    改变这一行

    System.out.println(key.toString());
    

    System.out.println(result.toString());
    

    【讨论】:

    • 非常感谢。不知道我怎么能错过。现在这对我有用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    • 2018-10-04
    • 2014-05-08
    • 2015-02-09
    • 2017-08-24
    • 2019-10-24
    相关资源
    最近更新 更多