Vector mit Objekten... Probleme bei der Weiterverarbeitung

Alex2xm

Mitglied
Hallo Zusammen,

folgendes Problem:
Habe von jm. 3 Klassen samt JAVAdoc bekommen. Mein Problem ist nun nur, dass ich nicht so ganz durchblicke was genau ich machen soll.

Habe die Funktion
Code:
Vector t = PT.getLinks(test, myURL);
In der Doku steht bei PT folgendes:
getLinks
public static java.util.Vector getLinks(java.lang.String htmlDoc,
java.net.URL baseURL)
Parameters:
htmlDoc - the HTML Text we want to search for links
baseURL - the URL we got the Text from
Returns:
a Vector with all links on the page containing LdObjects

Bis hier ist noch alles klar. ich bekomme also einen Vector (in diesem Fall t).

Nun habe ich in der Classe Ld geschaut und da steht nun folgendes bei der Methode die ich nun brauche:
getUrl
public java.lang.String getUrl()
Returns:
the URL of the Link

Wie kann ich nun diese Methode mit den Ergebnissen von t „füttern“ ? Wenn ich die Klasse mit einem Konstruktor aufrufe und dann die Methode drauf anwenden will bekomme ich immer die Fehlermeldung, dass es sich um einen Vector handelt. Das passiert auch, wenn ich den Vector mit:

Code:
Enumeration enum = t.elements();
            while (enum.hasMoreElements())
            {
               ld.getUrl(enum); // Hier ist der fehler
                System.out.println(enum.nextElement());
            }

durchgehe.

Wie kann ich die URLs aus der Methode vom Vector bekommen

Für die schnelle Hilfe danke ich im Voraus...

Vielen Dank

Alexander
 
Servus!

Warum machst du nicht folgendes:

Code:
Object[] oa = t.toArray();
Das funktioniert wenn deie Objekte, die im Array nun sind (welche das sind weis ich nicht) eine anständige toString() Methode haben wie natürlich String selbst und die Klasse URL ...

for(int i=0 ; i < oa.length; i++){
         System.out.println(oa[i]);
}

Gruß tom
 
Also
bei der rückgabe eines Vectors ist wichtig zu wissen von welchem Typen die Objekte sind!

falls es sich um Strings handeln sollte kannste ein ganz simples .toString() benutzen
hier z.b.
PHP:
List list = PT.getLinks(test, myURL);
Iterator it = t.iterator();
while(it.hasNext()){
Object obj = it.next();
System.out.println(obj.toString());
}

Wenn der Typ des Objektes nun aber nicht vom Typen String ist musste es typecasten
das sieht dann so aus:
PHP:
while(it.hasNext()){
VariablenTyp vt = (VariablenTyp)it.next();
System.out.println(vt);
}
Wenn du noch fragen hast schick mir einfach ne pm dann beantworte ich Sie dir... :)
 
Servus!

Die Methode println() von System.out ist mehrfach überladen ... wenn ihr ein Objekttyp übergeben wird, ruft sie automatisch die toString() Methode auf, deshalb ist ein System.out.println(irgendwas.toString()) nicht nötig ...
ein System.out.println(irgendwas); reicht vollkommen aus....

Gruß Tom
 
Hi Leute,

Danke für die Antworten.

habe nun das Problem gelöst.
Werde mich nun weiteren Problemen stellen :)


Also nochmals DANKE!

Alexander
 

Neue Beiträge

Zurück