Startproblem!



  • Hi,
    ich habe ein kleines Problem. Im moment weiß ich nicht wie ich es am sinnvollsten angehen kann. Folgendes, ich habe zwei Textdateien. Beide haben bestimmte Marker an denen ich bestimmte Textstellen erkennen kann. Wie stelle ich das an. Ich dachte an die Verwendung von Vector um Textzeilen direkt im Container ablegen und direkten zugriff darauf habe.
    Mein Problem ist nun, wie lege ich den Typ Vector dynamisch an. Den zur Laufzeit stehen die Anzahl an Marker der Textdatei nicht fest.
    Wahrscheinlich ein triviales Problem aber ich bin nicht so fit im Programmieren und muss erst verstehen wie man sowas anpacken kann.

    Mike



  • Du erzeugst einfach einen Vector mit einer Startgröße. Falls du mehr Elemente einfügen möchtest braucht dich das nicht zu kümmern - das macht die Klasse von selbst. Die Startgröße ist wichtig für das Laufzeitverhalten. Je weniger Speicherallokationen man machen muss desto besser aber wahrscheinlich wirds bei dir eine Startgröße von 0 sein. Also

    Vector myVector = new Vector(0, 1)
    


  • Hi CengizS,
    das würde zwar gehen aber dann tue ich mich mit der Nachbearbeitung schwerer. Ich dachte mit sowas.

    Ein Marker sieht so aus [Textstelle1]
    Nun wollte ich einen Vector erstellen der auch Textstelle1 heißt. Es wäre halt geschickter den ich könnte direkt auf diesen einen Vektor zugreifen und müßte nicht einen großen Vektor durchlaufen.
    Ab und zu muss ich auch von einer anderen Textdatei Textstellen kopieren. Bei einem großen Vektor muss ich darauf achten nichts von den anderen Textstellen zu überschreiben. Bei einem kleinen,seperatem könnte ich diesen löschen oder überschreiben.

    So sieht eigentlich mein ganzes Problem aus 🙂 Vielleicht gibt es auch etwas besseres als Vektor.

    Grüßle
    Mike



  • Du könntest die Vektoren in einer HashMap speichern. Da kannst du dann auch über den Namen (=Schlüssel) auf die Inhalte zugreifen.



  • Hi, die HashMap sieht gut aus. Nur weiß ich nicht ganz genau wie das mit den Schlüsseln läuft bzw. wie ich diese benennen soll.

    [Textstelle 1]
    blah
    blahblah
    blahblahblah
    
    [Textstelle 2]
    blah
    blahblah
    blahblahblah
    

    Wie kann ich am sinnvollsten die blahs zur jeweiligen Textstelle auftrennen? Wäre es geschickt den Key dann einfach Textstelle + zähler zu benennen? Der key wird wahrscheinlich ein unique key sein?

    Mike



  • Nenn ihn doch "Textstelle 1"?



  • Wie meinst du das genau? Also ich hab mal folgendes Versucht:

    HashMap hm = new HashMap();
    hm.put("Textstelle 1","blah");
    hm.put("Textstelle 1","blahblah");
    hm.put("Textstelle 1","blahblahblah");
    

    Meckert er irgendwas mit dem Key. Denke der Key ist nur ein Alias auf den eigentlichen Wert.
    Oder habe ich es falsch verstanden???

    Mike



  • Ich dachte eher an folgendes

    HashMap
    Textstelle 1       Vector
                       [1]blah
                       [2]blahblah
                       [3]blahblahblah
    Textstelle 2       Vector
                       [1]blah2
                       [2]blahblah2
                       [3]blahblahblah2
    Textstelle n       Vector
                       [1]blahn
                       [2]blahblahn
                       [3]blahblahblahn
    


  • Ah geschnallt 😃
    Werde ich morgen versuchen in einen Code umzusetzen

    Danke
    Mike


Anmelden zum Antworten