【发布时间】:2013-05-27 15:38:08
【问题描述】:
当我打印字符串数组的内容时,输出也会打印“null”。我不确定这有什么问题。这是输出,我期望的是没有'null'的输出
null(wa?>=0)nullnull*(wo?>=0)nullnull*(4*wa?+7*wo?>=50)nullnull*(d1=10)nullnull*((d2=1)+(k=2))nullnull
感谢并感谢您的帮助。我会说我在 Java 方面的技能处于初级水平,两周前我就开始了。
下面是实际代码:
String[] arrStr = new String[50];
int countStr = 0;
for (int i = 0; i < para.length; i++) {
if (para[i] == '(') {
count = count + 1;
}
if (para[i] == ')') {
count = count - 1;
}
if (count > 0) {
arrStr[countStr] = arrStr[countStr] + para[i];
} else {
if (para[i] == ')') {
arrStr[countStr] = arrStr[countStr] + para[i];
countStr += 1;
} else {
countStr += 1;
arrStr[countStr] = arrStr[countStr] + para[i];
// System.out.println(para[i]);
}
}
}
System.out.println(countStr);
for (int i = 0; i < countStr; i++) {
System.out.print(arrStr[i]);
}
在这部分之前,我正在从一个word文档中读取以下字符串:
(wa?>=0)AND(wo?>=0)AND(4*wa?+7*wo?>=50)AND(d1=10)AND((d2=1)+(k=2))
我认为问题可能是由于以下行:
arrStr[countStr] = arrStr[countStr] + para[i];
由于arrStr[countStr] 最初为空,我向其中添加了一个元素,因此将其保存为null+para[i]。你认为有可能吗?
就像我尝试时一样:System.out.println(arrStr[0]); 我得到的输出为
null(wa?>=0)
【问题讨论】:
-
如果您在调试代码时需要帮助,实际代码会有所帮助。
-
能否请您显示导致错误的代码?
-
在数组上完成每个赋值操作后,打印出你已经赋值的值。它会让您更好地了解值被设置为 null 的位置。如果你能提供完整的代码,就更容易指出问题所在。
标签: java arrays string printing null