P ps Medlem sedan juni 2000 841 inlägg Frågan 6 dec. 2000 01:13 #1 Halloj..
Jag vill ha metoder i en array.. men jag får det inte att funka.
Kolla koden så ser ni hur jag menar.
Exempel på hur jag menar:
<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#666600">
public int getResultat(int[] inNamnEtt, int inNamnTva)
{
namnEtt = inNamnEtt;
namnTva = inNamnTva;
p = 0;
for(int i = 0; i \< methArr\[\].length; i++)
{
if(namnTva == i)
{
p = methArr();
break;
}
}
return p;
}
private int methArr[0]()
{
/ / massor av kod
return wee;
}
private int methArr[1]()
{
/ / massor av annan kod
return wee;
}
osv...
Nån som har ideér om hur det funkar?
------------------
ps » Email » wF framed! :e
[Redigerat av ps den 06 dec 2000]
R Robban Medlem sedan dec. 1999 2 555 inlägg [Med reservation för att jag är nybörjare inom Java - lämnar detaljerna åt dem som kan mer]
Tror det blir svårt att göra vad (jag tror att) du vill göra, eftersom java inte har funktionspekare (eller andra pekare heller, för den delen).
Tror att lösningen helt enkelt ligger i att skapa en ny klass (som mycket väl kan vara en "inre klass", eller vad det nu heter) med den metod(er) du vill ha med, och sedan skapa objekt utifrån denna.
------------------
Robban < robban@lipogram.com >
V Vetgirig Medlem sedan nov. 2000 199 inlägg Skapa ett interface som innhåller den metod du vill anropa.
För varje alternativ skriv en klass som implementerar metoden och vad som skall ske för det alternativet.
Skapa en enkel array och befolka den med en instance från varje klass ovan och lägg in den vid rätt alternativ.
I getResult så indexerar du i arrayer och finner rätt object och anropar metoden hos detta.
Voila!
------------------
Nätshoppar du med Igiro ? http://www.igiro.se/
P ps Medlem sedan juni 2000 841 inlägg Tack för era svar.. jag lyckades iofs lösa det på ett annat sätt, kanske inte riktigt lika smidigt men dock.
Hoppas nån annan får nytta av det.. :)
------------------
ps » Email » wF framed! :e