如何在Java中将ArrayList <String>转换为ArrayList <Object>,反之亦然?

ArrayList <String>到ArrayList <Object>

除了泛型(T)中的类型化参数外,您还可以使用“?”来表示未知类型。这些被称为通配符,您可以将通配符用作-参数类型或字段或本地字段。使用通配符,您可以将ArrayList <String>转换为ArrayList <Object>,如下所示:

ArrayList<String> stringList = (ArrayList<String>)(ArrayList<?>)(list);

示例

import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;
public class ArrayListExample {
   public static void main(String args[]) {
      //实例化ArrayList对象
      ArrayList<Object> list = new ArrayList<Object>();
      //填充ArrayList-
      list.add("apples");
      list.add("mangoes");
      list.add("oranges");
      //将对象类型的数组列表转换为字符串类型
      ArrayList<String> stringList = (ArrayList<String>)(ArrayList<?>)(list);
      //列出获得的列表的内容
      Iterator<String> it = stringList.iterator();
      while(it.hasNext()) {
         System.out.println(it.next());
      }
   }
}

输出结果

apples
mangoes
oranges

ArrayList <Object>到ArrayList <String>

要将ArrayList <Object>转换为ArrayList <String>-

  • 创建/获取String类型的ArrayList对象。

  • 通过将上面获得/创建的对象作为参数传递给其构造函数,以创建一个Object类型的新ArrayList对象。

示例

import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;
public class ArrayListExample {
   public static void main(String args[]) {
      //实例化ArrayList对象
      ArrayList<String> stringList = new ArrayList<String>();
      //填充ArrayList-
      stringList.add("apples");
      stringList.add("mangoes");
      stringList.add("oranges");
      //将字符串类型的数组列表转换为对象类型
      ArrayList<Object> objectList = new ArrayList<Object>(stringList);
      //列出获得的列表的内容
      Iterator<String> it = stringList.iterator();
      while(it.hasNext()) {
         System.out.println(it.next());
      }
   }
}

输出结果

apples
mangoes
oranges