我正在为一个班级做一个项目,我需要创建一个程序,你可以输入"员工数据"例如姓名,员工编号,部门和职位,然后让程序将该信息读回给您。
所有这些都是通过控制台完成的,为名称提供输入。
Catch是我不知道他们将在我的计划中投入多少员工。我需要一种方法来动态创建我的"员工"上课并命名。
有没有人有任何建议。不幸的是,我没有任何代码可以写,因为我不知道从哪里开始。我已经使用可以设置每个参数的方法创建了我的员工类,但同样,问题是首先从控制台创建类。
答案 0 :(得分:2)
您不需要动态命名对象(实际上,您可能根本不需要对对象的引用)。只需将创建的对象存储在集合中即可。
答案 1 :(得分:1)
您可以使用ArrayList,检查实现:
声明并初始化变量:
ArrayList<Employee> empArray = new ArrayList<Employee>();
将员工添加到阵列:
empArray.add(aEmployee);
从数组中回复员工:
empArray.get(0);
这里有更多文档: https://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html
答案 2 :(得分:0)
当读入所有员工数据时,循环遍历列表或设置并打印出员工对象。
编辑:在此处回复您的评论,因为评论无法格式化:
你能设置一个字符串ListArray吗?它是这样的:
List<String> myList=new ArrayList<String>();
就像那样,你创建了一个员工对象的ListArray:
List<Employee> employeeList=new ArrayList<Employee>();
您创建一次List,然后为每个员工创建Employee对象。使用新的Employee()创建一个新的Employee对象。假设您已经使用getter和setter编写了Employee对象的代码,它的内容如下:
Employee employee;
// ... in a loop, reading all the input data..
employee = new Employee();
employee.setName("Reggie");
employeeList.add(employee);
//... end your loop here....
创建并添加所有员工后,只需使用for循环遍历列表:
for(Employee emp:employeeList) {
System.out.println(emp.getName());
}