怎么做?
以下是尝试过的代码。
[试过的代码]
package com.company;
import java.util.ArrayList;
import java.util.Date;
public class Main {
public static void main(String[] args) {
ArrayList<String, Integer, Date> myArray = new ArrayList<String, Integer, Date>();
myArray.add("FIRST");
myArray.add("SECOND");
myArray.add("THIRD");
// add multiple object
myArray.add(new Integer(10));
// add multiple object
myArray.add(new Date());
}
}
答案 0 :(得分:1)
是的,但不推荐。
ArrayList<Object> myArray = new ArrayList<Object>();
将Object
作为一种类型,它接受所有类型。
ArrayList<Object> myArray = new ArrayList<Object>();
myArray.add("FIRST"); //accepted
myArray.add(new Integer(10)); //accepted
myArray.add(new Date()); //accepted
因此,在获取的同时,您需要处理Object
您正在回归的问题。
但是,好的建议是为每种类型选择单独的列表。
答案 1 :(得分:0)
以下行甚至不会编译。
ArrayList<String, Integer, Date> myArray = new ArrayList<String, Integer, Date>();
您尝试实现的目标可以使用
完成ArrayList<Object> myArray = new ArrayList<>(); // Object type
但这根本不是推荐的选择。在从ArrayList中取回值时,您需要手动处理不同类型的对象,这也非常麻烦。
因此,始终创建您要使用的特定类型的ArrayList
。
ArrayList<String> myString = new ArrayList<>(); // For strings
ArrayList<Date> myDates = new ArrayList<>(); // For Date