object - 转list

来源:趣味经验馆 2.95W

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

object 转list的具体操作是什么呢?跟小编一起来看看吧:

java中如果需要将一个object转成list,大部分人会直接使用强制类型转换:(List

正确的做法如下:

public static Object getObj() {    List list = new ArrayList<>();    list.add("1");    list.add("ab");    return list;} public static void main(String[] args) {    Object obj = getObj();     List 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做类型转换

如果你想使用更方便的方法,可以直接调用下面的函数。

public static  List castList(Object obj, Class clazz){    List result = new ArrayList();    if(obj instanceof List)    {        for (Object o : (List) obj)        {            result.add(clazz.cast(o));        }        return result;    }    return null;}

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

使用方法如下:

public static void main(String[] args) {    Object obj = getObj();    List list = castList(obj, String.class);    list.forEach(System.out::println);}

object 转list

热门标签