显示来自另一个类的多个数组列表

时间:2017-04-22 13:08:33

标签: java arrays

在我们当前的章节中,我们正在使用数组,我在创建要从另一个类调用的列表时遇到了一些麻烦。

目标:显示来自另一个类的并行数组,这可以是单数或组中的。

问题:调用具有不同数据类型的多并行数组的最佳或有效方法?

错误:以非法语句开头,如前所述,这是整个代码,请忽略我刚刚测试的循环显示,以确保阵列设置正确。

谢谢大家,再次感谢任何帮助

import java.util.ArrayList;

public class Employee {

    public static void main(String[] args) {

// create an array with employee number, first name, last name, wage, and Skill
        int[] empID = {1001, 1002, 1003};
        String[] firstName = {"Barry", "Bruce", "Selina"};
        String[] lastName = {"Allen", "Wayne", "Kyle"};
        double[] wage = {10.45, 22.50, 18.20};
        String[] skill = {"Delivery Specialist", "Crime Prevention", "Feline Therapist"};
        /*
for ( int i = 0; i < empID.length; i++ )
{
System.out.print( "Employee ID: " + empID[i] + "\n");
System.out.print( "First Name: " + firstName[i] + "\n");
System.out.print( "Last Name: " + lastName[i] + "\n");
System.out.print( "Hourly Wage: $" + wage[i] + "\n");
System.out.print( "Skill: " +skill[i] );
System.out.println("\n");
}
         */
        //create an object to be called upon from another class
public ArrayList<int, String, String, double, String> getEmployee() {
        ArrayList<int, String, String, double, String> employeeList = new ArrayList<int, String, String, double, String>();
        employeeList.add(empID);
        employeeList.add(firstName);
        employeeList.add(lastName);
        employeeList.add(wage);
        employeeList.add(skill);

        return employeeList;
    }

}
} //end of class

2 个答案:

答案 0 :(得分:1)

首先,你不能像这样声明一个ArrayList:

ArrayList<int, String, String, double, String>

如果需要,可以创建自己的对象,创建一个可以获取这些值的类,然后可以创建此Object的ArrayList,例如:

class MyClass{
   int att1;
   String att2;
   String att3;
   double att4;
   String att5;

    public MyClass(int att1, String att2, String att3, double att4, String att5) {
        this.att1 = att1;
        this.att2 = att2;
        this.att3 = att3;
        this.att4 = att4;
        this.att5 = att5;
    }
}

然后你可以像这样创建一个ArrayList:

List<MyClass> list = new ArrayList<>();

答案 1 :(得分:0)

回到Java的基础知识,它是一种面向对象的编程语言,因此你应该始终致力于抽象&#34;事物&#34;如果可能,进入一个对象。您应该封装关于“员工”的所有常见属性。进入一个以所有数据为字段的类。

如上面的答案所示,创建ArrayList<MyClass>是初始化arraylists的正确方法,因为它们只能获取一种类型的数据。您可能已经看到其他类采用多种类型,例如HashMap<Type1, Type2>,但这些是出于特定原因。请务必先检查API文档!