将字符串输入到arrayLists?

时间:2014-06-10 18:00:03

标签: java arrays xcode arraylist

假设我有一个代码empList,它是一个ArrayList。我有3个字符串,名字,老板和dob持有一些员工的数据。我想编写从我的字符串创建Employee的代码,然后将其添加到empList。我可以使用ArrayList的add方法在我构建它之后添加我的员工,但我不太清楚如何。

这是我到目前为止写的员工课程:

ArrayList<String> empList = new ArrayList<String>();
class Employee{
    Employee(String dob, String name, String boss)  //(constructor)
   //dob should be mm/dd/yyyy, and boss of length 0 indicates no boss.

   int    getAge()
   String getName()
   String getBoss()  //returns length 0 string if none
   String getDob()

3 个答案:

答案 0 :(得分:0)

您应该将列表声明更改为List<Emloyee>

List<Emloyee> empList = new ArrayList<Emloyee>();

(阅读更多关于Java中的泛型:http://docs.oracle.com/javase/tutorial/java/generics/
然后,您可以创建一个新的Employee实例并将其添加到列表中:

Employee employee = new Employee("dob", "John Smith", "His Boss");
empList.add(employee);

顺便提一下:考虑将boss的类型从String更改为Employee(取决于您的使用案例/含义)。

答案 1 :(得分:0)

您可以使用

在构造函数中执行此操作
empList.add(this);

但是,您必须将ArrayList的类型更改为Employee,或者如果您想将其保留为String,那么您必须必须在构造函数中创建String,然后执行

String str = "Your string here";
empList.add(str);

我也很确定你不能在班级之外找到ArrayList。 Java不会让你在课外有东西。

答案 2 :(得分:-1)

您可以通过ArrayList方法向add()添加字符串。

您的员工类中已经有了getXXX()方法,因此您可以按照

的方式执行某些操作。
String str = "Name: " + emp.getName() + ", Boss: " + emp.getBoss() + ", DoB: " + emp.getDoB();

empList.add(str);

您可能需要的是Employees的数组列表(ArrayList<Employee>),它将以类似的方式添加,而不会将所有内容添加到字符串中。