Vergleich im geordeten Vector und Methodenaufruf

Status
Nicht offen für weitere Antworten.

MamboKurt

Mitglied
Moin,
ich habe eine Kretur-Klasse, eine Speziesklasse mit den Eigenschaften dieser Spezies (z.B Lebensdauer) und will nun eine Narungkettenklasse schreiben, in der festgelget ist welche Spezies welche frisst, und die einen Vector mit den Species enthält.
In der Speziesklasse habe ich einen nach Position geordneten Vector, der die jeweiligen einzelnen Kreaturen dieser Spezies enthält.
Die Kreatur-Klasse hat eine Methode fressen() und eine Methode gefressenwerden(). Die erste Methode setzt den Nahrungsvorrat der Kreatur hoch, die andere markiert sie als tot.
Eine Kreatur der einen Spezies frisst eine Beutekreatur nur, wenn sie auf dem selben Feld stehen, sprich, die selben Koordinaten haben.
Ich habe das so implementiert, damit ich mehrer Spezies machen kann und selber sie Jäger-Beute-Beziehungen selber definieren kann, also das eine Spezies mehrere Beutespezies hat oder von mehreren Spezies gefressen werden kann.

Meine Frage ist nun: Wie kann ich in der Nahrungskettenklasse am besten speichern wer wen frisst und was am wichtigsten ist eine effiziente Abfrage implementieren, wann einer gefressen wird bzw. frisst, also die einzelnen Methoden der Kreatur-Klasse aufrufen?

Hier ein bisschen Code zur Illustrierung:
Code:
class Kreatur extends Koodrinaten
{
//
// Hier stehen Konstruktoren, mit denen man diverse Dinge festlegen kann, zB timeToLive
//

  public void fressen(int x)
  {
    nahrung += x;
  }

  public void gefressenwerden()
  {
    this.die();
  }

  public void die()
  {
    alive = false;
  }

  public void olden()
  {
    if (--timeToLive == 0 | --nahrung == 0)
      this.die()
  }

  // public int[] get()
  //{
  //int[] temp = {this.x, this.y};
  //return temp;
  //}


  protected boolean alive = true;
  protected int nahrung;
  protected int timeToLive; //<- das wird eigentlich von der Speziesklasse vorgegeben

  // protected int x;  diese Variablen sind von der Koordinatenklasse geerbt
  // protected int y;
}


class Species
{
//
// Konstruktoren, mit denen man zB die Anfangspopulation bestimmen kann und ähnliches
//

  public void create()
  {
    Functions.insert(population, new Kreatur); // fügt die Kreatur an der richtigen Stelle im Vector ein
  }

  public Vector getPopulation()
  {
    return (Vector) population.clone();
  }

  public void letEat(int x)
  {
    ((Kreatur)population.get(i)).eat();
  }

  public void letDie(int x)
  {
    ((Kreatur)population.get(i)).die();
  }

  protected Vector population = new Vector();
}

class Nahrungskette
{

  public void addSpecies(Species neueSpezies)
  {
    species.add(neueSpecies);
  }

  protected Vector() species = new Vector();

//In dieser Klasse will ich nun die abfrage machen und die Methoden
//der Kreaturen ausführen lassen
//auch muss noch adäquate speicherung der JägerBeuteBeziehungen
// her
}
Das is natürlich nur ein bisschen was zusammengschrieben und soll nur zeigen, wie meine bishereigen Klassen aufgebaut sind. Es geht mir im Moment nur darum die effiziente Abfrage zu machen und sie Methoden fresse() und gefressenwerden() auszuführen.
Wäre nett, wenn da jemand mal seine ideen dazu postet.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Neumi5694 double Vergleich Allgemeine Java-Themen 19
M Vergleich C# und Java Allgemeine Java-Themen 24
D Vergleich OracleJDK/OpenJDK Allgemeine Java-Themen 7
T Komplexitätsoptimierung String vergleich Allgemeine Java-Themen 4
T If Vergleich ergibt nicht das richtige Ergebnis Allgemeine Java-Themen 2
K Vergleich von Strings von Objekten Allgemeine Java-Themen 4
E Problem mit Array vergleich Allgemeine Java-Themen 4
M Vergleich (unscharf) von Screenshots Allgemeine Java-Themen 0
L Vergleich-Xml-Daten Allgemeine Java-Themen 3
S BufferedImage vergleich mit Subimage Allgemeine Java-Themen 1
Z Vergleich zwischen int und Object Allgemeine Java-Themen 1
M Datums vergleich klappt überhaupt nicht.. Allgemeine Java-Themen 4
S Calendar vergleich Allgemeine Java-Themen 2
G Zeilenweiser Vergleich Allgemeine Java-Themen 10
E Vorschläge, effizientes Hashing von Dateien für vergleich Allgemeine Java-Themen 7
W Vergleich eines Datenträgers auf neue Dateien Allgemeine Java-Themen 14
C Vergleich von Enums gibt inkorrekte Werte Allgemeine Java-Themen 6
N Input/Output Vergleich von identischen Strings schlägt fehl Allgemeine Java-Themen 5
N Vergleich eigener Klassen Allgemeine Java-Themen 5
P J-Unit vergleich von 2 Objekten merkwürdig Allgemeine Java-Themen 7
K GUI-Button Inhalte vergleich - TicTacToe Grundriss Allgemeine Java-Themen 11
N Vergleich von generischen Typen Allgemeine Java-Themen 2
S String-Vergleich in if Allgemeine Java-Themen 7
P JNA - JNI - pures Java - Vergleich Allgemeine Java-Themen 6
I Vergleich zweier Felder Allgemeine Java-Themen 3
M Vergleich von TreeSet<HashSet>^2 Allgemeine Java-Themen 8
F Vergleich zweier Listen Allgemeine Java-Themen 4
U Java Performance im Vergleich zu C++ in speziellem Anwendungsfall Allgemeine Java-Themen 6
D Was ist schneller? Zuweisung oder Vergleich? Allgemeine Java-Themen 18
O String NICHT vergleich Allgemeine Java-Themen 7
G Vergleich von .jpg Dateien Allgemeine Java-Themen 2
I vergleich und zählen von Strings Allgemeine Java-Themen 7
K Vergleich von Icons . Allgemeine Java-Themen 8
N vergleich mit while und for schleife Allgemeine Java-Themen 7
minzel String in String (Vergleich) Allgemeine Java-Themen 2
J vergleich zweier datenstrukturen Allgemeine Java-Themen 6
P Vergleich: Java - .net Allgemeine Java-Themen 5
T Vergleich von Tastatureingabe mit dem was in der Datei steht Allgemeine Java-Themen 21
N Split -> IF-String vergleich Allgemeine Java-Themen 5
N Vergleich zweier Hashtable / mehrere Enumerations Allgemeine Java-Themen 7
C Performance Vergleich, Java vs. Tcl/Tk Allgemeine Java-Themen 3
B bit vergleich oder regex Allgemeine Java-Themen 1
A Vector Strings in Array splitten Allgemeine Java-Themen 6
G Fehler mit Vector Allgemeine Java-Themen 3
M String Array Vector komprimieren und verschicken Allgemeine Java-Themen 3
P Vectorelemente in einen anderen Vector kopieren Allgemeine Java-Themen 12
U Vector aus Oberklasse spezialisieren Allgemeine Java-Themen 2
R Vector in JList Allgemeine Java-Themen 11
M Cast double[]-->Object[] oder Vector<double[]> Allgemeine Java-Themen 3
R Threads korrekte Synchronisation bei Vector und ArrayList Allgemeine Java-Themen 6
H Index Out of Bounds bei Vector Allgemeine Java-Themen 4
H Java Vector Frage Allgemeine Java-Themen 9
E NetBeans Vector durch ArrayList ersetzen Allgemeine Java-Themen 4
C Vector/Point-Problem Allgemeine Java-Themen 3
M Buffer-Vector einzeln und zusammen synchronisieren Allgemeine Java-Themen 4
B Suchalgorithmus der Klasse Vector Allgemeine Java-Themen 5
X Vector Allgemeine Java-Themen 3
S 2D Vector speziell ausgeben. Allgemeine Java-Themen 2
S Vector in Vector gespeichert, wie greift man darauf zu? Allgemeine Java-Themen 3
C Swing JTable Vector aus DB adden Allgemeine Java-Themen 3
R Vector.clear() oder neu initialisieren Allgemeine Java-Themen 3
S vector & strings Allgemeine Java-Themen 26
X Vector in Intervall-Menge umwandeln Allgemeine Java-Themen 4
D Array oder Vector in Enum Deklarieren Allgemeine Java-Themen 3
J Erweiterte For-Schleife mit Vector Allgemeine Java-Themen 5
G JComponent in Vector - wie klonen? Allgemeine Java-Themen 7
V Performancefrage int-Vector/Stack Allgemeine Java-Themen 10
N HashMap<String,Vector<String>> a = new HashMap<String,Vector<String>>(); Allgemeine Java-Themen 4
H GUI: RectangleDrawer - zu viele Elemente im Vector für die paint-Methode Allgemeine Java-Themen 6
S JList in Vector Allgemeine Java-Themen 3
I Vector mit Objekten sortieren,Videos mit JMF wiedergeben Allgemeine Java-Themen 6
MQue Vector<..> nicht verwenden Allgemeine Java-Themen 4
H Vector<Character> zu char[] castern Allgemeine Java-Themen 2
T Element aus Vector entfernen Allgemeine Java-Themen 4
Spot84 Vector nach Ressourcetyp sortieren Allgemeine Java-Themen 4
M get Funktion von Vector Allgemeine Java-Themen 4
N wie greife ich auf hashmap in vector zu Allgemeine Java-Themen 9
V NullPointerException bei Vector Allgemeine Java-Themen 2
E einfache Frage zu Vector Allgemeine Java-Themen 8
K Serialisierung von Hashmap in Vector Allgemeine Java-Themen 3
G Vector beim Initialisieren befüllen Allgemeine Java-Themen 4
G Vector addAll Allgemeine Java-Themen 5
B sorteiren von Datein nach Zeitstempel in einem Vector Allgemeine Java-Themen 5
W [solved] Vector sortieren (Collection / Comparable?) Allgemeine Java-Themen 7
MQue Vector Allgemeine Java-Themen 7
F Vector in eine Datenbank speichern? Allgemeine Java-Themen 3
P Vector auf JTree Allgemeine Java-Themen 6
P dynamisches Array / Vector Allgemeine Java-Themen 2
P JTable/Vector Allgemeine Java-Themen 5
T Vector und remove? Allgemeine Java-Themen 13
T Vector in JAVA ? Allgemeine Java-Themen 10
P Vector in vielen Klassen Allgemeine Java-Themen 21
MQue Vector implementieren Allgemeine Java-Themen 2
MQue Vector<State> Allgemeine Java-Themen 2
O hilfe bei Vector frage Allgemeine Java-Themen 6
F Synchronisation + Vector/ArrayList/LinkedList Allgemeine Java-Themen 7
Z Elemente in Vector nach Häufigkeit sortieren. Allgemeine Java-Themen 13
H java.util.Vector langsam ? Allgemeine Java-Themen 5
H Vector<T>[] vecs = new Vector<T>[10]; geht nicht Allgemeine Java-Themen 2
N Java API java.util.vector Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben