IT科技

当前位置 /首页/IT科技 > /列表

object转list

object转list有两种方法:

方法一:

public static Object getObj() {

List<String> list = new ArrayList<>();

list.add("1");

list.add("ab");

return list;

}

public static void main(String[] args) {

Object obj = getObj();

List<String> result = new ArrayList<>();

if (obj instanceof ArrayList<?>) {

for (Object o : (List<?>) obj) {

result.add(String.class.cast(o));

}

}

result.forEach(System.out::println); // 输出:1 ab

}

Main主函数中的 Object obj模拟了List对象。后续的代码首先判断obj是否是List类型,然后使用Class.cast做类型转换

object转list

方法二:

函数:

public static <T> List<T> castList(Object obj, Class<T> clazz)

{

List<T> result = new ArrayList<T>();

if(obj instanceof List<?>)

{

for (Object o : (List<?>) obj)

{

result.add(clazz.cast(o));

}

return result;

}

return null;

}

它接受两个参数,一个是obj,即是我们需要转换的List对象,然后传入List中元素的class即可。

object转list 第2张

使用方法如下:

public static void main(String[] args) {

Object obj = getObj();

List<String> list = castList(obj, String.class);

list.forEach(System.out::println);

}

TAG标签:list object #