我正在尝试仅复制添加系列中的数字,例如45 + 45 + 45 代码工作得很好,直到它遇到最后45个,我得到的所有显示的是两个45,我想要他们三个。我想建议我没做什么会给我准确的输出。这是我的代码
InputStreamReader read = new InputStreamReader(System.in);
BufferedReader in = new BufferedReader(read);
String str = "", st;
System.out.println("Enter Number");
st = in.readLine();
int l = st.length();
int c = 0;
String arr[] = new String[20];
for(int i = 0; i < l; i++)
{
char chr = st.charAt(i);
if(chr == '+')
{
arr[c++] = str;
str = "";
}
else
{
str += chr;
}
}
for(int i = 0; i < c; i++)
{
System.out.println(arr[i]);
}
}
答案 0 :(得分:3)
查看您的代码。在阅读system("printf '%s\\n' ',{\"key\":\"value\"}' >> outFile");
后,您只是将内容添加到数组中。作为最后的45&#39;数字没有剩余+
,它不会添加到您的数组中。
如果这不是作业,最好的解决方案是按照评论中的建议使用+
。在其他情况下,我建议您在循环结束时存储split()
的最后一个内容。它包含剩下的剩余字符。
这是一个简单的代码,我相信你可以搞清楚。