【发布时间】:2014-05-02 04:12:43
【问题描述】:
我不知道为什么 eclipse 在运行这个程序时没有在控制台上打印任何东西。
public class StringOptimization {
public StringOptimization() {
}
public static void main(final String[] args) {
final StringOptimization optimization = new StringOptimization();
final String sampleArray[] = new String[60000];
for (int i = 0; i <= 50000; i++) {
sampleArray[i] = "i";
}
final String finalString = optimization.addStringItems(sampleArray,
true);
System.out.println(finalString);
}
public String addStringItems(final String[] items,
final boolean forceUpperCase) {
final StringBuilder returnValue = new StringBuilder();
for (final String item : items) {
returnValue.append(item);
}
return forceUpperCase ? returnValue.toString().toUpperCase()
: returnValue.toString();
}
}
【问题讨论】:
-
您是否尝试过使用调试器逐步执行此操作,或者至少添加更多打印语句来确定程序的执行与您的预期不同的地方?
-
看起来是 eclipse 或 sysout 的限制,因为如果我将其更改为 500 可以打印值
-
也许你应该再等一会儿,你有没有尝试在你的循环中放置跟踪(println)?
-
如果我将数组更改为超过大小 [4680],似乎会停止打印
-
你在命令行上运行过程序吗?或者每 1000 次左右就打印一次?