在这里,我需要为肥皂请求创建XML。它可能有多个用户ID标签,如下所示。
<userid>123</userid>
<userid>456</userid>
...
下面是将代码添加到XML中的代码。
SOAPElement userid1 = example.addChildElement("userid");
SOAPElement userid2 = example.addChildElement("userid");
userid1.addTextNode("123");
userid2.addTextNode("456");
上面的代码适用于两个
userids
,但不能超过两个,因此下面是将代码和值添加到XML的Java代码。for(int i = 0; i < userids.length; i++){
SOAPElement userid+i = example.addChildElement("userid");
userid+i.addTextNode(userids[i]);
}
这里的问题是
SOAPElement userid+i = example.addChildElement("userid");
无法正常工作。 最佳答案
SOAPElement[] userid = new SOAPElement[userids.length]
for(int i=0; i<userids.length; i++){
userid[i] = example.addChildElement("userid");
userid[i].addTextNode(userids[i]);
}
'userid + i'不是可接受的Java变量名称(标识符),因此您必须得到一个编译时错误,如我无法解析为变量。
更好的方法是使用值数组,可以使用上面列出的SOAPElement对象数组或其他Java集合的实现(例如List)
另请阅读valid java identifier rules