Yello
On Tue, 27 Nov 2001 22:46:32 +0100, Bertel Lund Hansen wrote:
> Det må være setDest() der leder efter om en destination findes og
> opretter den hvis den er ny. Metoden getDest() skal bare finde den
> destination som instansen af Flight har en reference til (hvis jeg
> forstår scenariet rigtigt).
Ideen er noget i stil med det her (kilden til getDest() v0.2beta!;)
public Airport getDest()
{
Flight tmp = (Flight)outgoing.firstElement();// Gets the first Flight
int destNum = tmp.getDest(); // Gets the unique destination id
int newDistFromStart = distFromStart+1;
/*
* if destNum exits, don't create a new object, just return the existing
object
*/
if (regedAirports.containsKey(destNum))
{
Airport destAP = (Airport)regedAirports.get(destNum);
System.out.println("- Airport exists");
}
else
{
Airport destAP = new Airport(destNum,airportNum,newDistFromStart);
}
return destAP;
}
Jeg har nu bare et nyt problem. destNum er en int som konstruktoren i
Airport bruger, men int virker ikke som key i et hashmap, jeg får
følgende compile time fejl:
BreadthFirstSearch.java:132: containsKey(java.lang.Object) in java.util.Map cannot be applied to (int)
if (regedAirports.containsKey(destNum))
^
BreadthFirstSearch.java:134: get(java.lang.Object) in java.util.Map cannot be applied to (int)
Airport destAP = (Airport)regedAirports.get(destNum);
^
BreadthFirstSearch.java:142: cannot resolve symbol
symbol : variable destAP
location: class Airport
return destAP;
^
3 errors
Jeg er hvis ikke i stand til at løse det selv.
--
Mvh. / Kind regards
Henrik Farre < enrique@obel.auc.dk --
http://Welcome.to/Webbench >
- If I where God, I would recompile the penguin with --enable-flying.