我試圖擺脫的NodeList的零初始化的,但它不會出現,我可以這樣做:初始化節點列表的Java
NodeList compiledNodeLIst = new Nodelist();
當我嘗試將它的try語句裏面,像這樣:
private NodeList compileToNodeList(String pattern, Document document){
try{
NodeList compiledNodeList = (NodeList) xPath.compile("/*/UserList/User").evaluate(document, XPathConstants.NODESET);
我的返回變量無法解析,如果我將它移入try塊中,我的方法錯誤沒有返回語句。以下是完整的陳述。
private NodeList compileToNodeList(String pattern, Document document){
NodeList compiledNodeList = null;
try{
compiledNodeList = (NodeList) xPath.compile("/*/UserList/User").evaluate(document, XPathConstants.NODESET);
} catch (XPathExpressionException e){
//TODO code for logging
e.printStackTrace();
}
return compiledNodeList;
這在技術上是行得通的,但我希望要麼擺脫空或解釋爲什麼這是不可能的。
你可以通過從try和catch中返回來擺脫它,但你真的不應該強調這種事情。 –
你需要問自己,如果只是捕捉異常,繼續是正確的做法。如果不可恢復,不要害怕拋出'RuntimeException'。 – MadConan