Hi,
Ich hänge mal wieder an einer Übungsaufgabe fest:
es soll quasi ein Fernseher simuliert werden. alles ganz einfach, nur text-basiert, kein GUI.
Es soll möglich bzw. vorhanden sein:
- vorgegebene Menge an Speicherplätzen(30)
- Sender auf einem bestimmten Speicherplatz festlegen
- einen Speicherplatz hochschalten
- den Namen des gewählten Senders ausgeben
Ich habe mir gedacht, ich speichere die Sender in einem Array. Der Speicherplatz im Array entspricht dann auch dem Speicherplatz des Senders.
Jetzt habe ich folgenden Code geschrieben. Dabei ergibt sich allerdings das Problem, dass die Sender scheinbar nicht gespeichert bleiben (so vermute ich). Wenn ich mir einen bestimmten Speicherplatz im Array ausgeben lassen bekomme ich immer "null".
Kann mir jemand einen Tipp geben, wie ich das beheben kann?
Danke.
Ich hänge mal wieder an einer Übungsaufgabe fest:
es soll quasi ein Fernseher simuliert werden. alles ganz einfach, nur text-basiert, kein GUI.
Es soll möglich bzw. vorhanden sein:
- vorgegebene Menge an Speicherplätzen(30)
- Sender auf einem bestimmten Speicherplatz festlegen
- einen Speicherplatz hochschalten
- den Namen des gewählten Senders ausgeben
Ich habe mir gedacht, ich speichere die Sender in einem Array. Der Speicherplatz im Array entspricht dann auch dem Speicherplatz des Senders.
Jetzt habe ich folgenden Code geschrieben. Dabei ergibt sich allerdings das Problem, dass die Sender scheinbar nicht gespeichert bleiben (so vermute ich). Wenn ich mir einen bestimmten Speicherplatz im Array ausgeben lassen bekomme ich immer "null".
Kann mir jemand einen Tipp geben, wie ich das beheben kann?
Code:
class Sender {
final int progs = 30;
String prog[] = new String[progs];
public int i;
String name;
//Konstruktor für Sender
public Sender(String name, int i) {
this.name = name;
this.i = i;
prog[i] = name;
}
//Konstruktor für die Auswahl eines Sendplatzes
public Sender(int i) {
this.i = i;
}
//zappen - einen Speicherplatz nach oben
public void zapp() {
if (i == 29) {
this.i = 1;
} else i = this.i + 1;
}
//Sender ausgeben
public void sausg() {
System.out.println(prog[i]);
}
public static void main(String[] args) {
Sender ard = new Sender("ARD", 1);
Sender zdf = new Sender("ZDF", 2);
Sender wdr = new Sender("WDR", 3);
Sender wahl = new Sender(2);
wahl.sausg();
}
}
Danke.