Auf Thema antworten

[code=java]public class Klassenzimmer {

        Schueler[] mates;

        int number = 0;


        public Klassenzimmer() {

            mates = new Schueler[5];

        }


        public void add(Schueler x) {


            mates[number] = x;

            number += 1;


            if (number <= 4) {

                System.out.println(x.forename + " " + x.name + " kommt rein");

            } else if (number > 4) {

                System.out.println("Tut uns leid, " + x.forename + " " + x.name + ". Das Klassenzimmer ist voll");

            }


        }


        public Schueler[] allGetOut() {

            // if(taxi.length == 0){

            // Ich soll ausgeben, wie viele ausgestiegen sind, d.h. wie viele im Taxi saßen

            Schueler[] taxi0 = new Schueler[0];

            Schueler[] taxi1 = new Schueler[1];

            Schueler[] taxi2 = new Schueler[2];

            Schueler[] taxi3 = new Schueler[3];

            Schueler[] taxi4 = new Schueler[4];


            if(number == 1)

                return new Schueler[1];

            else if (number == 2)

                return new Schueler[2];

            else if (number == 3)

                return new Schueler[3];

            else if (number == 4)

                return new Schueler[4];

            else

                return taxi0;


        }


    @Override

    public String toString() {

        if (number == 1)

            return "Das ist das Klassenzimmer von Dr.Jung. Er unterrichtet Marek Kurz ";

        else if (number == 2)

            return "Das ist das Klassenzimmer von Dr.Jung. Er unterrichtet Marek Kurz und Paul Alles";

        else if (number == 3)

            return "Das ist das Klassenzimmer von Dr.Jung. Er unterrichtet Marek Kurz, Paul Alles und Lena Weil.";

        else if (number == 4)

            return "Das ist das Klassenzimmer von Dr.Jung. Er unterrichtet Marek Kurz, Paul Alles, Lena Weil und Fabien Lehm. ";

        else

            return "Das ist das Klassenzimmer von Dr.Jung. Er unterrichtet niemanden.";


    }

}[/code]

_______________________________________________________________________________________________________________________

[code=java]public class Schueler {


    String forename;

    String name;


    public Schueler(String forename, String name) {

        this.forename = forename;

        this.name = name;

    }


    public String getName() {

        return name;

    }

    public String getForename(){


        return forename;

    }


    @Override

    public String toString() {

        return forename+ " " + name;

    }


}[/code]

_______________________________________________________________________________________________________________________

[code=java]public class Main {

    public static void main(String[] args) {


        Schueler m1 = new Schueler("Marek", "Kurz");

        Schueler m2 = new Schueler("Paul","Alles");

        Schueler m3 = new Schueler("Lena","Weil");

        Schueler m4 = new Schueler("Susi","Born");

        Schueler m5 = new Schueler("Fabien","Lehm");


        Klassenzimmer classe = new Klassenzimmer();


        classe.add(m1);

        classe.add(m2);

        classe.add(m3);

        classe.add(m4);

        classe.add(m5);


        System.out.println(classe.allGetOut());


    }

}[/code]

_______________________________________________________________________________________________________________________

Ausgabe:

[code]Marek Kurz kommt rein

Paul Alles kommt rein

Lena Weil kommt rein

Susi Born kommt rein

Tut uns leid, Fabien Lehm. Das Klassenzimmer ist voll

[LclassroomForExample.Schueler;@59a6e353[/code]


Problem:

Nachdem die Methode allGetOut() ausgeführt wird, soll in einem Array angezeigt werden, wer alles das Klassenzimmer verlassen hat.

Das heißt, falls nur Marek Kurz im Klassenzimmer war, dann soll [Marek Kurz] ausgegeben werden.


Ich erhalte jedoch immer einen Fehler:


allGetOut() returned an array that contains null instead of a proper Schueler object for one of the schueler!



Oben