Vielen Dank für den Ansatz mit den Events.
Im MvP 2.
Anschließend kommen dann noch 2-3 dazu je nachdem wie lange ich das betreibe ;-).
Das ist korrekt.
Teilweise wird das Vorhandensein von 2 unterschiedlichen Elementen Bedinung dafür sein eine weiteres Element (These) zu erschaffen (Du meinst These = Instanz ?- ich möchte den Begriff der Instanz nicht vorschnell und falsch verwenden ).
Ich habe mit Events noch gar keine Erfahrung und gar keine Kentniss, da werde ich jetzt mal recherchieren.
Folgend mal ein Code-Beispiel (ich habe da jetzt nicht alle Bedingungen zu Ende programmiert), die Thesen konnte ich darin jetzt nicht unterbringen, weil ich auf meine Objekte nicht zugrifen kann wie ich das gerne möchte.
Der Compiler zeigt in den Zeilen in dennen ich die Objekte trend1 und trend2 erstelle die Meldung
"The value of the local variable trend1/2 is not used" an, obwohl die Println Anweisung aus der Objektklasse ausgeführt wird.
Was mach ich da falsch?
[CODE]
import java.util.ArrayList;
public class Program {
static int currentValue;
static int lastValue;
static int valueBeforeLastValue;
public static void main(String[] args) {
//Timestamp-Beispiele erzeugen
ArrayList<Integer> listeTimestamps = new ArrayList<Integer>();
listeTimestamps.add(1);
listeTimestamps.add(2);
listeTimestamps.add(3);
listeTimestamps.add(4);
listeTimestamps.add(5);
//Werte-Beispiele erzeugen
ArrayList<Integer> listeWerte = new ArrayList<Integer>();
listeWerte.add(12);
listeWerte.add(13);
listeWerte.add(14);
listeWerte.add(9);
listeWerte.add(7);
//Schleife zum Durchlauf aller Rohdaten-Werte, um den Objekten Trend den das Attribut Typ (auf- oder absteigend) zuzuordnen
for (int i =0; i < listeWerte.size(); i++) {
if (i == 0) {
currentValue = listeWerte.get(i);
}
else if (i == 1) {
lastValue = currentValue;
currentValue = listeWerte.get(i);
}
else if (i >= 2) {
valueBeforeLastValue = lastValue;
lastValue = currentValue;
currentValue = listeWerte.get(i);
//Bedingung um den Typ aufsteigend zuzordnen
if (valueBeforeLastValue < lastValue && lastValue < currentValue == true){
//Erzeugen der Elemente/Objekte vom Typ aufsteigend
Trend trend1 = new Trend(valueBeforeLastValue, currentValue, "aufsteigend", "inital");
/* FRAGE: Mit jedem Durchlauf der übergeordneten for Schleife überschreibe ich hier aktuell mein Objekt trend1
Wie kann ich den Objektnamen dynamsich bilden?
Leider weiß ich nicht wie ich einen Objektnamen aus Variablen erzeuge kann :-(
Gibts dafür eine alternative Möglichkeit?
*/
}
//Bedingung um den Typ absteigend zuzordnen
else if (valueBeforeLastValue > lastValue && lastValue > currentValue == true) {
Trend trend2 = new Trend(valueBeforeLastValue, currentValue, "absteigend", "inital");
}
}
}
}
}
[/CODE]
[CODE]
public class Trend {
private int anfangsWert;
private int letzterWert;
private String type;
private String valid;
public Trend(int anfangsWert, int letzterWert, String type, String valid) {
this.anfangsWert = anfangsWert;
this.letzterWert = letzterWert;
this.type = type;
this.valid = valid;
System.out.println("Gerade erstellt mit dem Anfangswert: " + anfangsWert + " Typ: "+ type + " Validity: " + valid);
}
public String getValid() {
return valid;
}
public void setValid(String valid) {
this.valid = valid;
}
public int getAnfangsWert() {
return anfangsWert;
}
public int getLetzterWert() {
return letzterWert;
}
public void setLetzterWert(int letzterWert) {
this.letzterWert = letzterWert;
}
public void setTyp(String type) {
this.type = type;
}
}
[/CODE]