3. Januar 20179 j Hey, bin gerade dabei mir Java anzueignen, doch wie lernt man wirklich effektiv die Sprache? Kann man es mit, wie man es aus dem Englisch Unterricht kennt, Vokabeln lernen vergleichen? Oder doch etwa learning by doing? Wie habt ihr den effektiv gelernt? GruĂ Sent from my iPhone using Fachinformatiker.de mobile app
3. Januar 20179 j Also habe Java im Studium gemacht, du lernst es nur durch machen. Kann dir die Tage mal paar Ăbungen hochladen bzw. Materialien. Du musst halt nur die Logik verstehen, irgendwann hast du den Griff raus.
3. Januar 20179 j Suche unter Google nach "coding katas" und versuche sie zu bearbeiten. Eine Liste findest du z.B. hier
3. Januar 20179 j Autor Also habe Java im Studium gemacht, du lernst es nur durch machen. Kann dir die Tage mal paar Ăbungen hochladen bzw. Materialien. Du musst halt nur die Logik verstehen, irgendwann hast du den Griff raus.Gerne Suche unter Google nach "coding katas" und versuche sie zu bearbeiten. Eine Liste findest du z.B. hierVielen DankSent from my iPhone using Fachinformatiker.de mobile app
3. Januar 20179 j Autor Verstehe verstehe die englischen ErklĂ€rungen ĂŒberhaupt nicht und zwar: What is the output of this Code: int result = 0; for (int i = 0; i < 5; i++) {  if (i == 3) {   result += 10;  } else {   result += i;  } } System.out.println(result); Ich weiĂ das 17 rauskommen, aber ich weiĂ nicht wie man drauf kommt. Die englische ErklĂ€rung verstehe ich nicht. Ich wĂŒrde es so erklĂ€ren: i entspricht 0, wenn i kleiner als 5 ist wird um 1 hoch gezĂ€hlt, bis zur 5. Wenn aber i 3 entsprechen, was es ja irgendwann tut werden 10 ausgegeben. Und weiter verstehe ich nicht. GruĂ Â (Des spinnt komplett rum, macht anstatt 1 gleich 2 AbsĂ€tze rein...) Sent from my iPhone using Fachinformatiker.de mobile app Bearbeitet 3. Januar 20179 j von KampfKatze
3. Januar 20179 j Der Code ist nicht vollstÀndig. Der Kopf der For-Schleife ist nicht vollstÀndig. Und was machst du gerade? Bis jetzt sehe ich nur, dass wenn der ZÀhler i gleich 3 ist, auf das Ergebnis 10 addiert wird, ansonsten 1. Bearbeitet 3. Januar 20179 j von Whiz-zarD
3. Januar 20179 j Autor vor 13 Minuten schrieb Whiz-zarD: Der Code ist nicht vollstĂ€ndig. Der Kopf der For-Schleife ist nicht vollstĂ€ndig. Und was machst du gerade? Habs editiert, sieht zwar grauenhaft aus aber die App spinnt irgendwie. Mache gerade Ăbungen zu Schleifen und for each etc Bearbeitet 3. Januar 20179 j von KampfKatze
3. Januar 20179 j Und wo genau liegt das Problem? Gehen wir mal die Schleife durch: i   result ------------------------------------ 0   result += 0 =>   result = result + 0 => result = 0 + 0 = 0 1   result += 1 =>   result = result + 1 => result = 0 + 1 = 1 2   result += 2 =>   result = result + 2 => result = 1 + 2 = 3 3   result += 10 =>   result = result + 10 => result = 3 + 10 = 13 4   result += 4 =>   result = result + 4 => result = 13 + 4 = 17 Auf result wird pro Schleifendurchlauf immer i dazu addiert. Die Ausnahme ist, wenn der ZĂ€hler i bei 3 ist. Dann wird 10 draufaddiert. Der += operator ist nur eine AbkĂŒrzung result += i ist das selbe wie result = result + i Bearbeitet 3. Januar 20179 j von Whiz-zarD
3. Januar 20179 j Autor Ach Hab es verstanden, also wird praktisch wenn jetzt rauskommt = 3 und beim nÀchsten Durchgang 4 immer das miteinander addiert und somit kommt man auf 7, sprich bei += 10 wÀren es dann 17 und dann kommt bsp. 5 beim nÀchsten dann wird das wiederrum mit der 17 addiert. Okay passt. [emoji1]Und da result mit 0 deklariert wurde wird mit 0 + 0 begonnen, weil i auch 0 ist, logisch. Dann wird weiter auf 1 gezÀhlt und das dann wiederrum + 0 = 1 Bei 2 wÀren es dann +2 = 3 Irgendwann wird 10 draufgerechnet sprich + 3 in dem Fall dann wÀren es 13.Und da nochmal um 1 hoch gezÀhlt wird haben wir dann zum Schluss 4 + 13 = 17Hab ich es so verstanden richtig? Sent from my iPhone using Fachinformatiker.de mobile app
3. Januar 20179 j Einfacher geht es kaum noch. Ich versuche es aber mal. Du hast eine For-Schleife. Im Kopf stehen folgende Informationen: Die ZĂ€hlervariable heiĂt i  => int i = 0 i wird mit 0 initialisiert => int i = 0 Die Schleife lĂ€uft so lange, wie i kleiner 5 ist => i < 5 Pro Schleifendurchlauf wird i um 1 erhöht => i++ Das bedeutet, du hast 5 SchleifendurchlĂ€ufe bei jedem Schleifendurchgang wird folgende Logik angewendet: if (i == 3) { result += 10; } else { result += i; } D.h. wenn i gleich 3 ist, dann wird auf result 10 addiert. Ansonaten i. Jetzt gehen wir die DurchlĂ€ufe Schritt-fĂŒr-Schritt durch: Durchlauf: i = 0, result = 0 i ist nicht 3, also wird auf result 0 addiert. result ist 0; also: result = result + i = 0 + 0 = 0 Durchlauf: i = 1, result = 0 i ist nicht 3, also wird auf result 1 addiert. result ist 0; also: result = result + i = 0 + 1 = 1 Durchlauf: i = 2, result = 1 i ist nicht 3, also wird auf result 2 addiert. result ist 1; also: result = result + i = 1 + 2 = 3 Durchlauf: i = 3, result = 3i ist 3, also wird auf result 10 addiert. result ist 3; also: result = result + 10 = 3 + 10 = 13 Durchlauf: i = 4, result = 13 i ist nicht 3, also wird auf result 4 addiert. result ist 13; also: result = result + i = 13 +4 = 17 Beim 6. Durchlauf hĂ€tte i den Wert 5 und somit entspricht i nicht mehr der Bedingung, dass es kleiner als 5 ist und bricht die Schleife ab. result ist dann 17 und wird in der Konsole ausgegeben. Bearbeitet 3. Januar 20179 j von Whiz-zarD
19. Januar 20179 j On â03â.â01â.â2017 at 5:18 PM, wisdomsoz said: Also habe Java im Studium gemacht, du lernst es nur durch machen. Kann dir die Tage mal paar Ăbungen hochladen bzw. Materialien. Du musst halt nur die Logik verstehen, irgendwann hast du den Griff raus. @wisdomsoz könntest du mir bitte, bei Gelegenheit, auch die Unterlagen zu Java vom Studium zusenden?? An ateso@outlook.de Vielen Dank GruĂ Ateso
27. Januar 20179 j Am 3.1.2017 um 16:50 schrieb KampfKatze: bin gerade dabei mir Java anzueignen, doch wie lernt man wirklich effektiv die Sprache? Kann man es mit, wie man es aus dem Englisch Unterricht kennt, Vokabeln lernen vergleichen? Ja und nein. Ja, weil es eine Handvoll Vokabeln gibt, die man einfach auswenig lernen muss. Zum Beispiel, dass man float fĂŒr Zahlen mit Nachkommastellen verwendet. Ja und nein, weil man keine Sprache (weder eine real existierende Sprache wie Englisch, noch eine Programmiersprache) beherrscht, wenn man einfach alle verwendeten Wörter und ihre Ăbersetzung auswendig kennt. Grammatik, Aussprache und die ganze Logik einer Sprache spielen auch eine Rolle. Gut, Aussprache spiellt bei Programmiersprachen keine Rolle. Die Syntax ist aber enorm wichtig. Und die Logik. Mit Logik meine ich, wie man letztendlich denkt. Beispiel: Im Deutschen wird die Zahl 97 Siebenundneunzig gesprochen, also 7 + 90. Im Englischen wĂ€ren es aber ninety-seven (90 + 7). Wenn ein Mensch, der mit Englisch aufgewachsen ist und Deutsch lernt, das erste Mal die Zahl 97 auf Deutsch diktiert bekommt, wird er wahrscheinlich 79 schreiben, weil er gewohnt ist, dass die Zehnerstelle zuerst genannt wird. Noch abgefahrener wird es im Französischen, da ist 97 nĂ€mlich quatre vingt dix sept (4 * 20 + 10 + 7) - zumindest bei mir immer wieder Anlass zu "wtf?"-Momenten, aber irgendwie auch raffiniert gelöst. Die Zahlen allein sind letztendlich alle die gleichen - aber sie werden komplett anders gedacht. Auf Programmiersprachen ĂŒbertragen muss man auch die Logik dahinter verstehen. Möglicherweise noch stĂ€rker als in einer gesprochenen Sprache. Grammatische Fehler machen auch Muttersprachler, die sind verzeihbar. Der Computer hingegen verzeiht nichts! Was ist der Unterschied zwischen do und while und wann wende ich was an - beides sind doch Schleifen? Wann ist etwas innerhalb des GĂŒltigkeitsbereichs? Wie erzeuge ich ein Objekt aus einer Klasse? Worauf zeigt der Zeiger? Wozu ist ĂŒberhaupt der Garbage Collector da und wie wird das in anderen Sprachen gelöst? Mit dem reinen Vokabellernen alleine kommt man da nicht weiter. Ich hab mehrmals erfolglos versucht, C und C++ zu lernen. Erst als ich begriffen habe dass da eine komplette Denkweise dahintersteht, in die man sich reinfuchsen muss, bin ich ĂŒber die ersten 50 Seiten der LernbĂŒcher hinausgekommen. Bearbeitet 27. Januar 20179 j von jk86
27. Januar 20179 j Also habe Java im Studium gemacht, du lernst es nur durch machen. Kann dir die Tage mal paar Ăbungen hochladen bzw. Materialien. Du musst halt nur die Logik verstehen, irgendwann hast du den Griff raus.Hi, kannst du vielleicht ne Link zu Ăbungen auch hier schreiben?Ich wĂŒrde die auch liebendgerne anschauen [emoji259]
30. Januar 20179 j vor 57 Minuten schrieb wisdomsoz: [...] ich werde es die Tage hochladen! Und dabei bitte die Urheberrechte berĂŒcksichtigen. Danke.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.