在 Java 中,如果 List 的元素没有指定泛型,那么默认情况下元素类型为 Object。你可以使用 Object 类型来取出其中的元素,但这样做会失去类型安全,可能导致类型转换异常。如果能确定元素类型,最好还是指定泛型。

示例:

List list = new ArrayList();
list.add('hello');
list.add(123);
String str = (String) list.get(0); // 取出元素并强制转换为 String 类型,如果 list 中不是 String 类型会抛出 ClassCastException 异常
int num = (int) list.get(1); // 取出元素并强制转换为 int 类型,如果 list 中不是 int 类型会抛出 ClassCastException 异常

使用 instanceof 判断元素类型:

如果你不确定元素类型,可以使用 instanceof 关键字进行判断:

for (Object obj : list) {
    if (obj instanceof String) {
        String str = (String) obj;
        System.out.println(str);
    } else if (obj instanceof Integer) {
        int num = (int) obj;
        System.out.println(num);
    }
}

建议:

为了代码的类型安全和可读性,建议在定义 List 时指定泛型。


原文地址: https://www.cveoy.top/t/topic/n63u 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录