2015-04-03 36 views
1

我有以下代碼eclipse爲什麼說局部變量即使被使用也不被使用?

private List<String> getItems() { 
    XmlDoc document = new XmlDoc(); 
    List<String> itemList = new ArrayList<String>(); 
    String itemNum; 
    try { 
     XmlUtils root = document.parse(xmlFile); 
     List<XmlUtils> listNode = root.getChildNodes(); 
     for (XmlUtils node : listNode) { 
      itemNum = node.getValue(); 
     } 
    } catch (XmlException e) { 
     e.printStackTrace(); 
    } 
    return itemList; 
} 

即使我使用的字符串itemNum裏面的for循環日食說「局部變量itemNum的值不使用」。爲什麼?

+3

你在哪裏使用它?你認爲分配有什麼效果? – 2015-04-03 15:10:39

+0

我在String itemNum處看到它; – 2015-04-03 15:11:12

回答

10

因爲您正在爲itemNum分配一個值,但從未讀取的是。這是一個清楚的跡象,表明變量未被使用。事實上,你可以安全地刪除這一行:

itemNum = node.getValue(); 

......沒有什麼會發生。也許你應該在分配它後東西itemNum

+0

正在給變量賦值而不是「使用」它? – 2015-04-03 15:12:18

+1

@ user1629109 nope,你只是在裏面放了一個值,但是你希望在稍後的時候做一些有價值的事情,如果沒有的話,有什麼用處呢? – 2015-04-03 15:13:22

+0

我在列表中添加了Sting,並且警告消息消失了。我只是好奇而已。非常感謝 – 2015-04-03 15:17:44

相關問題