Guten Nachmittag,
ich möchte eine Methode implementieren, die von einer LED-Kette jede zweite LED leuchten lässt. Allerdings wird das zweite next() schlicht nicht durchgeführt, auch nicht, wenn vorher eine if-Abfrage erfolgt, welche überprüft, ob ein aktuelles Objekt vorhanden ist. Hier der Quelltext zur Veranschaulichung, der Fehler liegt in den Methoden leuchten02 und leuchten03 vor.
[/SIZE]
ich möchte eine Methode implementieren, die von einer LED-Kette jede zweite LED leuchten lässt. Allerdings wird das zweite next() schlicht nicht durchgeführt, auch nicht, wenn vorher eine if-Abfrage erfolgt, welche überprüft, ob ein aktuelles Objekt vorhanden ist. Hier der Quelltext zur Veranschaulichung, der Fehler liegt in den Methoden leuchten02 und leuchten03 vor.
Java:
[SIZE=3]public class Steuerung
{
protected int anzahlLEDs;
public List<LED> lichterkette;
public Steuerung()
{
lichterkette = new List<LED>();
anzahlLEDs = 0;
}
public void ledEinfuegen(LED pled)
{
anzahlLEDs++;
lichterkette.append(pled);
}
public void lichterketteAnhaengen(List<LED> pLichterkette)
{
anzahlLEDs = 0;
lichterkette.concat(pLichterkette);
lichterkette.toFirst();
while(lichterkette.hasAccess())
{
anzahlLEDs++;
lichterkette.next();
}
}
public int getAnzahlLEDs()
{
return anzahlLEDs;
}
public void leuchten01()
{
lichterkette.toFirst();
while(lichterkette.hasAccess())
{
lichterkette.getContent().lichtAN();
lichterkette.next();
}
}
public void leuchten02()
{
lichterkette.toFirst();
while(lichterkette.hasAccess())
{
lichterkette.getContent().lichtAN();
lichterkette.next();
}
lichterkette.toFirst();
lichterkette.next();
while(lichterkette.hasAccess())
{
lichterkette.getContent().lichtAUS();
lichterkette.next();
if(lichterkette.hasAccess())
{
lichterkette.next();
}
}
}
public void leuchten03()
{
lichterkette.toFirst();
while(lichterkette.hasAccess())
{
lichterkette.getContent().lichtAN();
lichterkette.next();
}
lichterkette.toFirst();
while(lichterkette.hasAccess())
{
lichterkette.getContent().lichtAUS();
lichterkette.next();
if(lichterkette.hasAccess())
{
lichterkette.next();
}
}
if(lichterkette.hasAccess())
{
lichterkette.getContent().lichtAUS();
}
}
}
Zuletzt bearbeitet: