打印部门数据

时间:2016-05-06 09:20:24

标签: java algorithm class

当我尝试打印部门内的数据时,它只打印其地址的内存。

如何打印部门和数据?

我希望College部门获取Lecturer部门中的所有参数。这意味着当我创建一个新的College时,我希望它创建一个包含所有参数的新Lecturer

College课程中,我添加了一个方法(NewLecturer),可添加额外的Lecturer。它写的正确吗?

public class main {
    public static void main(String[] args) {
        Lecturer[] L1 = new Lecturer[] { new Lecturer("Dani", 2, "Banana", 1001) };

        College FirstCollege = new College("Hmpson", 2, L1);

        for (int i = 0; i < L1.length; i++) {
            System.out.print(L1[i]);
        }

        System.out.print(L1);
        System.out.print(FirstCollege);
    }
}

头等舱:

public class Lecturer {
    public String nameOfLecturer = "";
    public int numOfTimesPenFalls = 0;
    public String favoriteIceCream = "";
    public int numAuto = 1000;

    //constructors, same name like class
    public Lecturer(String name, int TimesPenFalls, String IceCream, int num) {
        nameOfLecturer = name;
        numOfTimesPenFalls = TimesPenFalls;
        favoriteIceCream = IceCream;
        numAuto = num;
        int maxLecturer = 10;
    }

    //Copy constructor 
    public Lecturer(Lecturer other) {
        nameOfLecturer = other.nameOfLecturer;
        numOfTimesPenFalls = other.numOfTimesPenFalls;
        favoriteIceCream = other.favoriteIceCream;
        numAuto = other.numAuto;
    }
}

第二课:

public class College {
    public String CollegeName = "";
    public int numOfLecturers = 0;
    public Lecturer[] allLecturers;

    // constructors, same name like class
    public College(String name, int numLecturers, Lecturer[] dataBase) {
        CollegeName = name;
        numOfLecturers = numLecturers;
        allLecturers = dataBase;
        int maxLecturer = 10;
    }

    // getter, only private
    public String getCollegeName() {
        return CollegeName;
    }

    // setter, only private
    public void setCollegeName(String newcollegeName) {
        CollegeName = newcollegeName;
    }

    public boolean newLecturer(Lecturer addNewLecturer, int maxLecturer) {
        if (numOfLecturers < maxLecturer || numOfLecturers == maxLecturer) {
            numOfLecturers += 1;
            return true;
        } else {
            System.out.print("Sorry, Max Lecturer!");
            return false;
        }
    }

    public void sortLecturer(Lecturer[] arrAllLecturers) {
        int numOfTimesPenFalls = 0;
    }    
}

2 个答案:

答案 0 :(得分:1)

System.out.print(Object)会调用参数toString()的{​​{1}}方法。

Object的默认toString方法不会让您感到有趣,因此您必须覆盖Object以满足您的需求,例如:

在课程toString中:

Lecturer

在课程@Override public String toString() { return "Lecturer [nameOfLecturer=" + nameOfLecturer + ", numOfTimesPenFalls=" + numOfTimesPenFalls + ", favoriteIceCream=" + favoriteIceCream + ", numAuto=" + numAuto + "]"; } 中:

College

答案 1 :(得分:0)

为您的Lecturer和College课程创建setter / getter和toString方法。