Re: Frage zu String Beispiel (Java)
Geizhals » Forum » Programmierung » Frage zu String Beispiel (Java) (8 Beiträge, 60 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
Frage zu String Beispiel (Java)
06.03.2003, 07:39:48
Könnt ihr mir vielleicht folgendes Beispiel näher erklären.

folgende Datei in folgendem Verzeichnis soll von ".java" auf ."class" geändert werden.

Lecture\JavaProgs\Prog5.java


  static String class Name (String path) {  // was bedeutet (String path), ist das
                                                             nur der name?
    StringBuffer b = new StringBuffer(path);
    if (path.endsWith(".java"){   // ok das ist klar, wenn es mit ".java" endet...
      int len = path.length();   // was bedeutet das? wofür steht len?
      b.replace(len-5, len, ".class"); // b.replace ist klar aber (len-5, len...)???
    }
    int i = path.lastIndexOf('\');  // was passiert hier? was wird mit('\') bewirkt?
    if (i >= 0) b.delete (0, i+1); // wird hier im StringBuffer von Index 0 bis Index
                                         // i+1 gelöscht? warum genau? wird nicht schon
                                        // oben .java durch. class ersetzt? was muss man da
                                       // noch genau löschen?
    return b.toString();  // hier wird aus dem StringBuffer ein String gemacht od?
  }
      

        

      The Brain      


Antworten PM Alle Chronologisch
 
Melden nicht möglich
.  Re: Frage zu String Beispiel (Java)  (tomsat am 06.03.2003, 10:07:36)
.
Re: Frage zu String Beispiel (Java)
06.03.2003, 10:08:34
hi,

"Lecture\JavaProgs\Prog5.java" ist jener string, der geändert werden soll, dh. beim aufruf "mitgegeben" werden soll...

beim aufruf wird nun "Lecture\JavaProgs\Prog5.java" in die variable "path" vom typ string geschrieben...

weiters wird ein stringbuffer "b" erzeugt und "path" (="Lecture\JavaProgs\Prog5.java") zugewiesen...

wenn die endung ".java" ist:
bestimmung der länge von "b" (=28 zeichen) und ablegen als integer namens len...
! die länge des stringbuffers ist 28, indizieren der einzelnen zeichen jedoch mit =0, 1, 2, ..., 26, 27 !

".java" steht nun im bereich 23, 24, 25, 26, 27

ersetzt wird nun der bereich len-5, len, somit 23, 24, 25, 26, 27, 28

-> an den stellen, wo ".java" steht, wird ".clas" geschrieben und zusätzlich an die stelle 28 noch "s" geschrieben, der stringbuffer somit um ein zeichen verlängert...

-> b="Lecture\JavaProgs\Prog5.class"

lastindexof() liefert den index des letzten auftretens von "\", wäre hier "17"...

delete() löscht nun die zeichen von 0 scheinbar bis excl. 17+1...

dann wird wieder ein string daraus gemacht,
returnwert sollte "Prog5.class" sein :-)

lg,
hariw
_________________________________________________________________________
AT:
A: Schaust oba gschissn aus mit de neich}n Brü}n...
B: I hob doch goa kane neich}n Brü}n...
A: Oba I...

DE:
A: Mann, schaust du belämmert aus mit den neuen Augengläser...
B: Ick hab doch gar keene neuen Augengläser...
A: Aber icke...
Antworten PM Alle Chronologisch Zum Vorgänger
 
Melden nicht möglich
.  Re: Frage zu String Beispiel (Java)  (Somnatic am 06.03.2003, 10:54:34)
..  Re(2): Frage zu String Beispiel (Java)  (hariw am 06.03.2003, 11:07:38)
...  Re(3): Frage zu String Beispiel (Java)  (The Brain am 06.03.2003, 11:54:21)
...  Re(3): Frage zu String Beispiel (Java)  (Somnatic am 06.03.2003, 12:28:24)
....  Re(4): Frage zu String Beispiel (Java)  (hariw am 06.03.2003, 13:00:24)
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung