Java中List的父类与子类如何转换?

定义

A是B的子类,A比B多几条属性

要点:

A是B的子类,但List<A>不是List<B>的子类。所以想直接转换是不行的。

子类转父类

List<A> childList = getxxxxxx;
List<B> dadList = new ArrayList<B>();
for(A a : childList){
    dadList.add(a);       //依次加到父类List里
}

父类转子类

List<B> dadList = getxxxxxx;
List<A> childList = new ArrayList<A>();
for(B b : dadList){
    childList.add((A)b);    //强转后依次加到子类List里
}
posted @ 2020-02-27 17:04  led二极管  阅读(6897)  评论(0编辑  收藏  举报