Frage von denido1984, 38

Ich bräuchte Hilfe bei einen Java Code. Kann mir jemand schrittweise erklären erklären was da gemacht wird?

public static String toString(int [ ] a) {
   String res=" [ " ;
   for(int i = 0; i< a.length; i++ ) {
      if ( i != 0 ) {
         res = res + " , " ;
      }
      res=res + a[ i ] ;
   }
   res= res+ " ] " ;
   return res;
}
Antwort
von TeeTier, 27

Das sieht man doch auf den ersten Blick:

- es wird eine Textdatei eingelesen

- alle Vokale werden in Großbuchstaben umgewandelt

- es wird der String "Ich bin ein Eierkuchen!" angehängt

- danach wird jedes Zeichen mit dem aktuellen Timestamp XOR verknüpft

- das Ergebnis wird in eine SQLite-Datenbank geschrieben

- dann wird eine LernErstMalDieGrundlagen-Ausnahme geworfen

... oder etwa: ein Integer-Array wird in einen Kommaseparierten String konvertiert und mit eckigen Klammern begrenzt. Eins von beiden sollte stimmen. :)

PS: Ernsthaft, wenn du bei solch übersichtlichen Schnipseln Verständnisprobleme hast, dann wiederhole am besten noch mal die Kapitel / Tutorials bzgl. Schleifen und Bedingungen. Viel Erfolg! :)

Antwort
von denido1984, 38

um genau zu gehen versteh ich den teil des codes sogar. Ich frage mich nur was res=res+a[i] .

Kommentar von TeeTier ,

Das fügt einen String an das Endergebnis an, wobei für die Variable auf der rechten Seite automatisch die toString()-Methode aufgerufen wird:

String res = "";

res += "Test: ";
res += 123;
res += ", ";
res += 456;

System.out.println(res);
// "Test: 123, 456"

Allerdings ist diese Methode der sog. String-Konkatenation sehr ineffizient, und normalerweise würde man einen StringBuffer bzw. einen StringBuilder anstelle eines unveränderlichen String-Objektes verwenden.

Kommentar von TUrabbIT ,

Die Variable res wird mit dem Wert von res und dem Array an der Stelle i belegt.

Also wenn res = "[d,a," und a[i]=c dann ergibt das "[d,a,c"

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten