myp*_*lat 11 java arrays class arraylist object
我想创建一个不同类实例的arraylist.如何在不定义类类型的情况下创建列表?(<Employee>)
List<Employee> employees = new ArrayList<Employee>();
employees.add(new Employee());
Employee employee = employees.get(0);
Run Code Online (Sandbox Code Playgroud)
Fra*_*eth 18
您可以创建一个Object列表List<Object> list = new ArrayList<Object>().由于所有的类实现扩展从隐性或显性的java.lang.Object类,这个名单可以容纳任何对象,包括的实例Employee,Integer,String等.
当您从此列表中检索元素时,您将检索一个Object而不再是一个元素,这Employee意味着您需要在这种情况下执行显式强制转换,如下所示:
List<Object> list = new ArrayList<Object>();
list.add("String");
list.add(Integer.valueOf(1));
list.add(new Employee());
Object retrievedObject = list.get(2);
Employee employee = (Employee)list.get(2); // explicit cast
Run Code Online (Sandbox Code Playgroud)
List<Object> objects = new ArrayList<Object>();
Run Code Online (Sandbox Code Playgroud)
objects 列表将接受任何 Object
你可以设计如下
public class BaseEmployee{/* stuffs */}
public class RegularEmployee extends BaseEmployee{/* stuffs */}
public class Contractors extends BaseEmployee{/* stuffs */}
Run Code Online (Sandbox Code Playgroud)
并在列表中
List<? extends BaseEmployee> employeeList = new ArrayList<? extends BaseEmployee>();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
116404 次 |
| 最近记录: |