list.addAll(___)。如何正确填充我的列表?

时间:2015-11-28 01:37:06

标签: java

基本上我的目标是:

。创建一个新的ArrayList。

。将我的钥匙放在里面。

第一部分终于完美无缺。第二部分不是。我在错误消息方面遇到了很多麻烦,所以我甚至不确定从哪里开始。我希望有人可以帮我弄清楚填充这个ArrayList的正确方法,或者给我一个更好的方法来收集我试图做的信息。

        let url = NSURL(string: myURL)!
        let urlSession = NSURLSession.sharedSession()
        //add api key to header somewhere here?

        let myQuery = urlSession.dataTaskWithURL(url, completionHandler: { data, response, error -> Void in

            //I have some error handling here


                var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as! NSDictionary
                let myArray:NSArray = jsonResult["restaurants"] as! NSArray
        })
        myQuery.resume()

错误:

  try
  {
     fw = new FileWriter(new File("Report.txt"));  

     //HashMap<String, Statistics> statistics;
     Set<String> keys = statistics.keySet();

     for (String i : keys)
     {
        System.out.println(i + ": " + statistics.get(i));
        System.out.println(i + ": " + inventoryName); 
     }

     List<Statistics> list = new ArrayList<Statistics>();
     list.addAll(keys);

     for(String i : list)
     {

     }
     fw.close(); 
  }

1 个答案:

答案 0 :(得分:0)

您可以迭代entrySet。出于性能原因,我建议使用LinkedHashMap。像,

Map<String, Statistics> statistics = new LinkedHashMap<>();
// ...
List<Statistics> list = new ArrayList<>();
for (Map.Entry<String, Statistics> entry : statistics.entrySet()) {
  list.add(entry.getValue());
}