假设这个未知层数的list名为list,可以使用递归方法来取得最里面一层的数组:

public static Object[] getInnermostArray(List<?> list) {
    if (list.isEmpty()) {
        return null;
    }
    Object item = list.get(0);
    if (item instanceof List) {
        return getInnermostArray((List<?>) item);
    }
    else if (item.getClass().isArray()) {
        return (Object[]) item;
    }
    return null;
}

这个方法首先检查list是否为空,如果是则返回null。然后获取list中的第一个元素,如果这个元素是一个List,则递归调用getInnermostArray方法,直到获取到最里面一层的数组。如果这个元素是一个数组,则直接返回这个数组。如果list中的元素既不是List也不是数组,则返回null。

用java 取一个未知层数的list的最里面一层的一个数组

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

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