Conforme o entaglement notou, você está preenchendo uma lista, mas tentando listar dados de outra...
Seu código também parece escrito em java 4. Em Java 7 ou superior seria assim:
List<Map><String, Object>> list = new ArrayList<>();
Map<String, Object> author1 = new HashMap<>();
author1.put("name", "A");
author1.put("id", new Integer(1));
list.add(author1);
Map<String, Object> author2 = new HashMap<>();
author2.put("name", "B");
author2.put("id", new Integer(2));
list.add(author2);
Map<String, Object> author3 = new HashMap<>();
author3.put("name", "C");
author3.put("id", new Integer(3));
list.add(author3);
for(Map<String, Object> author : list){
System.out.println(author);
}
Outra coisa... por que você está usando um Map, ao invés de criar uma classe Author? Ficaria ainda melhor, assim:
Em Author.java
public class Author {
private int id;
private String name;
public void Author(int id, String name) {
this.id = id;
this.name = name;
}
public String getName() { return name; }
public int getId() { return id; }
@Override
public String toString() { return "#" + id + " - " + name; }
}
No seu .java atual:
List<Author> list = new ArrayList<>();
list.add(new Author(1, "A"));
list.add(new Author(2, "B"));
list.add(new Author(3, "C"));
for(Author author : list){
System.out.println(author);
}