Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich wieder mal - blick mich grad nicht ganz durch an einer Zeile - bitte
korrigiert mich wenn ich etwas falsch interpretiere:
Zum Verständnis In. & Out. sind Klassen vom Lehrer zum Lernen bzw. Werte einlesen.
Also ich habe Gegenwärtig keine Ahnung was da genau los ist...
Java:
public static void main(String[] arg) {
In.open("input.txt"); /* Angabe Datei mit Zahlen */
int[] a = readArray(); /*Legt ein Array an und verweist auf eine Methode readArray */
Out.print("Eingabe: ");
printArray(a); /* Gibt das fertig angelegte Array aus*/
invert(a); /*Verweist auf die invert Methode*/
Out.print("Invertiert: ");
printArray(a); /*Gibt die Array Liste nach der invert Methode aus*/
In.close();
/*ENDE */
Java:
static int[] readArray() { /*Methode readArray*/
int len = In.readInt(); /*Wenn die Liste aus 7, 3, 4 bestehen würde so würde jetzt die Variable len den Wert 7 haben oder?? Was passiert genau?*/
int[] a = new int[len]; /*Was passiert hier?*/
for (int i = 0; i < len; i++) /*Was passiert hier*/
a[i] = In.readInt(); /*und was hier*/
return a;
}
Ich versuche mir Java selbst beizubringen und hoffe auf Eure Hilfe!
- bitte helft mir indem ihr mir mit den Zahlen 7,3,4 erklärt was passiert dann habe ich leichteres Verständnis.
Um ganz genau sagen zu können, mit wie vielen Feldern das Array initialisiert werden soll, fehlt der Code von
Code:
readInt()
aus der statischen Klasse
Code:
In
.
Aber rein von der Logik her scheint es doch darum zu gehen, Zeichen aus einer Textdatei zu lesen und diese in einem Array für ein Programm als ganze Zahlen verfügbar zu machen.
Demnach müsste das Array mit 3 Feldern initialisiert werden, weil in deiner Textdatei nur 3 Zahlen stehen.
[JAVA=3] int[] a = new int[len]; /*Was passiert hier?*/
for (int i = 0; i < len; i++) /*Was passiert hier*/
a = In.readInt(); /*und was hier*/
return a;[/code]
Zeile 3 aus readArray() initialisiert ein int-Array
Code:
a
mit der Anzahl an Feldern, die aus der Anzahl der aus der Textdatei ausgelesenen Zeichen ermittelt wurden.
Zeile 4 ist der Kopf einer for-Schleife. Ein Zähler i wird einmalig initialisiert. Die Schleife wird nun so oft durchlaufen und der Zähler mit len verglichen, bis i den gleichen Wert hat wie len. i wird nach jedem Schleifendurchlauf inkrementiert (i++), es wird also jeweils der Wert 1 zu i addiert.
Zeile 5 gehört zu dem, was in allen Schleifendurchläufen ausgeführt werden soll. Hier soll offenbar eine Zahl eingegeben werden, welche anschließend im int-Array gespeichert wird. Der Speicherplatz im Array wird mit der Variable i übergeben.
1. Zeile: Eine Variable a wird angelegt und mit der Rückgabe von In.readInt() gefüllt.
2. Zeile: Es wird ein int[] Array der Länge len angelegt und der erstellten Variable a zugewiesen.
Ist das len eine variable oder Funktion wie -> length.
Ich dachte nämlich dass eine Zahl z.B. die Erste aus dem *.txt hergenommen wird und
als int in der Variable len abgelegt wird. Danach wird diese Variable die soeben eingelesen wurde im Array a abgelegt. (Ist das also falsch?)