Hi,
ich habe ein kleines Problem. Ich brauche folgende Funktionalität. In einer ComboBox steht entweder ein Integer oder der Wert ist leer (""). Jetzt soll abhängig von den Werten ein Objekt instanziert werden. Ich habe es mit folgenden Konstrukt probiert (PseudoCode)
Das Problem ist, dass die gleiche Variable instanziert wird mit unterschiedlichen Datentypen. Ich brauche diese Funktionalität, weil ich eine Methode aufrufen will die obj als Argument nimmt. Die Methode versteht beide Datentypen. Ich habe schon überlegt die Methode extra zu schreiben. Das wird aber lästig, weil das Problem hier vereinfacht dargestellt ist, und die Varianten dieser Methode ziemlich groß wären. Dann habe ich folgendes probiert.
Das funktioniert soweit wenn ich im Struct expliziert auf den Datentypen Int oder Var caste. Dann habe ich mit x versucht die class zu beschaffen und zu casten. Das geht aber schief. Hat jemand eine Lösung oder eine bessere Idee. Ich will das struct nicht mehrfach schreiben, da dieses Struct noch weitaus mehr Parameter hat und ich müsste für jeden Parameter zwei Möglichkeiten schreiben.
Ideal wäre new Struct("config",<Var o. Int Datentyp>,<Var o. Int Datentyp>,<Var o. Int Datentyp>......)
Ich muss noch dazusagen, dass das Zeug auch noch unter Java 1.4 laufen muss. Hat jemand eine Idee?
Vielen Dank schon mal im voraus.
Gruß
internetscout
ich habe ein kleines Problem. Ich brauche folgende Funktionalität. In einer ComboBox steht entweder ein Integer oder der Wert ist leer (""). Jetzt soll abhängig von den Werten ein Objekt instanziert werden. Ich habe es mit folgenden Konstrukt probiert (PseudoCode)
Code:
if (!jComboBox.getSelectedItem.equals("")){
Objectx obj= new Objectx();
}
else{
Objecty obj= new Objecty();
}
Code:
Term goal=null;
Vector v=new Vector();
Class x;
if(!jComboBox15.getSelectedItem().equals("")){
v.add(new Int(Integer.valueOf(jComboBox15.getSelectedItem().toString()).intValue()));
x=v.elementAt(0).getClass();
}
else {
v.add(new Var());
x=v.elementAt(0).getClass();
goal= new Struct("config",(Int) v.elementAt(0),new Var());
solutions =engine.getResolution(goal);
Ideal wäre new Struct("config",<Var o. Int Datentyp>,<Var o. Int Datentyp>,<Var o. Int Datentyp>......)
Ich muss noch dazusagen, dass das Zeug auch noch unter Java 1.4 laufen muss. Hat jemand eine Idee?
Vielen Dank schon mal im voraus.
Gruß
internetscout