
Originariamente inviata da
schumy2000
scusa ma non richiami sempre la stessa classe bensì istanze diverse della stessa classe.
perdonami ma credimi ti spieghi in maniera criptica...
Tu dici che la classe XorSplit è già esistente? E' stata gia istanziata? dati devono essere messi nella stessa variabile della stessa istanza oppure in istanze diverse della stessa classe?
prova a spiegarti meglio.
chiedo scusa a te a tutti quanti...sono agli inizi che della programmazione e ancora nn so spiegarmi molto bene. vi posto il codice forse riuscirete a capire meglio:
Main:
codice:
String xorsplit = "\"signavio:sid-8D5C98CA-A20A-4264-93CF-ECDF6224901C\" . 0, \"nonamegat\",edges(\"signavio:SequenceFlow_1\" . 0 and \"signavio:sid-E3D5ED09-D303-4195-8E27-516CF4D132AF\" . 0))";
XorSplit xorsplit1 = new XorSplit(xorsplit);
ArrayList <String> TokenXor = xorsplit1.TokenXor();
for(String a : TokenXor)
System.out.println("TokenXor: "+a);
String subedges = xorsplit1.extractEdges(TokenXor.get(2));
System.out.println("edges: "+subedges);
ArrayList <String> SplitEdges = xorsplit1.SplitEdges(subedges);
for(String b : SplitEdges)
System.out.println("SplitEdges: "+b);
ArrayList <String> Xor = xorsplit1.Xor(TokenXor, SplitEdges);
for(String c : Xor)
System.out.println("Xor: "+c);
ArrayList <String> XorPointDivision = xorsplit1.XorPointDivision(Xor);
for(String f : XorPointDivision)
System.out.println("XorPointDivision: "+f);
xorsplit1.setXorSplit(XorPointDivision);
//xorsplit1.stampaXorSplit();
Xor(superclasse):
codice:
ublic class Xor {
String xor;
public Xor(String xor)
{
this.xor = xor;
}
public ArrayList<String> TokenXor()
{
ArrayList<String> TokenXor = new ArrayList<String>();
StringTokenizer st = new StringTokenizer(xor, ",");
while (st.hasMoreTokens())
{
TokenXor.add(st.nextToken());
}
return TokenXor;
}
public String extractEdges(String edges)
{
String subedges = "";
if(edges.startsWith("edges"))
{
subedges = edges.substring(6, edges.length()-2);
}
return subedges;
}
public ArrayList<String> SplitEdges(String subedges)
{
String[] strValues = subedges.split("and");
ArrayList<String> SplitEdges = new ArrayList<String>(Arrays.asList(strValues));
return SplitEdges;
}
public ArrayList<String> Xor(ArrayList<String> TokenXor, ArrayList<String> SplitEdges)
{
ArrayList<String> Xor = new ArrayList<String>();
Xor.add(TokenXor.get(0));
Xor.add(TokenXor.get(1));
for(int i=0; i<SplitEdges.size();i++)
{
Xor.add(SplitEdges.get(i));
}
;
return Xor;
}
public ArrayList<String> XorPointDivision(ArrayList<String> Xor)
{
ArrayList<String> XorPointDivision = new ArrayList<String>();
for(int i=0; i<Xor.size(); i++)
{
StringTokenizer st = new StringTokenizer(Xor.get(i), ".");
while (st.hasMoreTokens())
{
XorPointDivision.add(st.nextToken());
}
}
return XorPointDivision;
}
}
XorSplit:
codice:
public class XorSplit extends Xor {
String InputEdge;
String InputToken;
String GatewayName;
String EdgeName;
String EdgeToken;
String xorsplit;
public XorSplit(String xorsplit)
{
super(xorsplit);
this.xorsplit = xorsplit;
}
public void setXorSplit (ArrayList<String> XorPointDivision)
{
for(int i = 0; i<XorPointDivision.size();)
{
this.InputEdge = XorPointDivision.get(i);
System.out.println("InputEdge : "+InputEdge);
i++;
this.InputToken = XorPointDivision.get(i);
System.out.println("InputToken: "+InputToken);
i++;
this.GatewayName = XorPointDivision.get(i);
System.out.println("GatewayName: "+GatewayName);
i++;
this.EdgeName = XorPointDivision.get(i);
System.out.println("EdgeName: "+EdgeName);
i++;
this.EdgeToken = XorPointDivision.get(i);
System.out.println("EdgeToken: "+EdgeToken);
i++;
}
}
public void stampaXorSplit()
{
System.out.println("InputEdge : "+InputEdge);
System.out.println("InputToken: "+InputToken);
System.out.println("GatewayName: "+GatewayName);
System.out.println("EdgeName: "+EdgeName);
System.out.println("EdgeToken: "+EdgeToken);
}
}
i dati devono essere messi nella stessa variabile della stessa istanza.
Io vorrei solo sapere se è possibile salvare + dati nella stessa variabile e successivamente stamparli oppure devo creare nuove variabili(però come faccio a creare nuove variabili se non so quante me ne servono?)