Hallo Leute,
ich nochmal. Ich hab folgendes Problem. Ich habe ein ArrayList und in dieses schreibe ich Objekte vom Typ Account. Jedes mal wenn der Bank ein Konto hinzugefügt wird, schreibe ich listAccounts.add(konto).
Damit habe ich eine variable Zahl an Konten. Nun will ich einen Transfer machen von einem Konto zum anderen. Doch das funktioniert leider nicht ganz, denn es wird ja auch teilweise getestet, ob der Benutzer derselbe ist und ähnliches.
Mein Problem ist folgendes: Ich habe eine Klasse Person, die hat einen Namen. Wenn ich die Funtkion getOwner().getName() aufrufe, dann sollte der Name rauskommen. In der Funktion unten kommt aber nicht der Name raus, sondern folgendes (als Beispiel): bank.Person@182f0db oder bank.Person@192d342
Was mach ich falsch? Bzw. wie kann ich das bekommen, was ich möchte, also den richtigen Namen, denn anscheinend funktionierts nicht mit :
Hier meine vollständige transfer-Funktion. Falls ihr nochwas braucht, lasst es mich wissen.
ich nochmal. Ich hab folgendes Problem. Ich habe ein ArrayList und in dieses schreibe ich Objekte vom Typ Account. Jedes mal wenn der Bank ein Konto hinzugefügt wird, schreibe ich listAccounts.add(konto).
Damit habe ich eine variable Zahl an Konten. Nun will ich einen Transfer machen von einem Konto zum anderen. Doch das funktioniert leider nicht ganz, denn es wird ja auch teilweise getestet, ob der Benutzer derselbe ist und ähnliches.
Mein Problem ist folgendes: Ich habe eine Klasse Person, die hat einen Namen. Wenn ich die Funtkion getOwner().getName() aufrufe, dann sollte der Name rauskommen. In der Funktion unten kommt aber nicht der Name raus, sondern folgendes (als Beispiel): bank.Person@182f0db oder bank.Person@192d342
Was mach ich falsch? Bzw. wie kann ich das bekommen, was ich möchte, also den richtigen Namen, denn anscheinend funktionierts nicht mit :
Java:
Account aTo = (Account)listAccounts.get(idto.intValue());
Hier meine vollständige transfer-Funktion. Falls ihr nochwas braucht, lasst es mich wissen.
Java:
//führt einen transfer von geld durch und gibt zurück, wie erfolgreich das ganze war ...
public boolean transfer(long accountIDFrom, long accountIDTo, float amount) {
System.out.println("transferStart");
Long idfrom = new Long(accountIDFrom);
Long idto = new Long(accountIDTo);
if ((accountIDFrom == accountIDTo) || (accountIDFrom < 0) || (accountIDTo < 0)) {
return false;
} else {
if (amount > 0) {
Account aFrom = (Account)listAccounts.get(idfrom.intValue());
Account aTo = (Account)listAccounts.get(idto.intValue());
System.out.println("aFrom: " + aFrom.getOwner());
System.out.println("aTo: " + aTo.getOwner());
if (checkTransfer(aFrom, aTo, amount) == false) {
return false;
} else {
if (aFrom.withdraw(amount) == false) {
return false;
} else {
aTo.deposit(amount);
return true;
}
}
} else {
return false;
}
}
}