Есть ли способ добавить данные в общую коллекцию на Java. Для, например: -Добавить данные в общую коллекцию в java
import java.util.List;
import java.util.Vector;
public class testGenerics {
public static void main(String args[]) {
Vector<? extends Number> superNumberList = null;
// I can do this
Vector<Integer> subList = new Vector<Integer>();
subList.add(2);
superNumberList = subList;
// But i cannot do this
// Gives the below compilation error.
//The method add(capture#2-of ? extends Number) in the type
//Vector<capture#2-of ? extends Number> is not applicable for the arguments (Integer)
superNumberList = new Vector<Integer>();
superNumberList.add(new Integer(4));
superNumberList = new Vector<Float>();
superNumberList.add(new Float(4));
}
}
Как упоминалось в моих комментариях я есть ошибки компиляции, когда я пытаюсь добавить Integer или Float данные в superNumberList.
Я в состоянии сделать это, первым способом, но хотел бы сделать это вторым способом и не уверен, почему Java не позволяет мне сделать это вторым способом.
У меня есть suitation, где у меня есть супер класс, который имеет этот superNumberList и все подклассы пытаются использовать эту же переменную, но имеет различные типы данных в этой коллекции, как Integer, Float и т.д.
Это объясняет, почему, но он не отвечает «есть способ ...» часть. –