当前位置:  开发笔记 > 编程语言 > 正文

Node的ArrayList是否包含非Node类型?

如何解决《Node的ArrayList是否包含非Node类型?》经验,为你挑选了1个好方法。

Node的ArrayList是否可以包含非Node类型?

使用类型转换是否有一种非常脏的方法?



1> Draemon..:

是的,但如果您尝试访问非节点元素,就像它是节点一样,您将获得类强制转换异常.泛型在(for)运行时被丢弃.

例如:

import java.util.*;
import java.awt.Rectangle;

public class test {
    public static void main(String args[]) {
        List list = new ArrayList();
        /* Evil hack */
        List lst = (List)list;

        /* Works */
        lst.add("Test");

        /* Works, and prints "Test" */
        for(Object o: lst) {
            System.err.println(o);
        }

        /* Dies horribly due to implicitly casting "Test" to a Rectangle */
        for(Rectangle r: list) {
            System.err.println(r);
        }
    }
}

推荐阅读
雨天是最美
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有