Warum erfolgt folgende Ausgabe und warum?

D

Dakor

Neues Mitglied
Hallo ihr Lieben,

ich lerne gerade,autodidaktisch, Java und habe einen Programmcode der eine Ausgabe erzeugt, die ich mir absolut nicht erklären kann.
Vielleicht könnt ihr mir ja weiterhelfen. :)

Java:
public class MischMasch4 {
    int zaehler = 0;
    public static void main (String[]args) {
        int anzahl = 0;
        MischMasch4[] m4a = new MischMasch4[20];
        int x = 0;
        while(x<9) {
            m4a[x] = new MischMasch4();
            m4a[x].zaehler = m4a[x].zaehler + 1;
            anzahl = anzahl + 1;
            anzahl = anzahl + m4a[x].vielleichtNeu(x);
            x = x +1;
        }
        System.out.println(anzahl + " " + m4a[1].zaehler);
    }
    
    public int vielleichtNeu(int index) {
        if(index < 5) {
            MischMasch4 m4 = new MischMasch4();
            m4.zaehler = m4.zaehler + 1;
            return 1;
        }
        return 0;
    }
}

Die Ausgabe lautet 14 1 .Ich kann mir wirklich kaum erklären warum.
 
Beste Antwort
L
Welche der beiden Zahlen? Die 14 oder die 1?

Die 14 ist sehr einfach zu erklären, du hast zwei Stellen wo anzahl hochgezählt wird: Zeile 10 und Zeile 11.
In Zeile 10 wird jedes mal um 1 hochgezählt pro Schleifendurchlauf - 9x wird die Schleife...
L

LimDul

Top Contributor
Welche der beiden Zahlen? Die 14 oder die 1?

Die 14 ist sehr einfach zu erklären, du hast zwei Stellen wo anzahl hochgezählt wird: Zeile 10 und Zeile 11.
In Zeile 10 wird jedes mal um 1 hochgezählt pro Schleifendurchlauf - 9x wird die Schleife durchlaufen.
In Zeile 11 wird eine Methode aufgerufen, die mal 1 und mal 0 zurückgibt. 1 gibt zurück, wenn der übergebene int werden (der dein Schleifenzähler ist) kleiner als 5 ist - also in den ersten 5 Durchläufen. 9+5 ergibt 14.

DIe 1 ist auch leicht zu erklären. Wann wird den der Zähler vom element an Stelle 1 hochgezählt?

Nun die Zähler werden in Zeile 9 und Zeile 20 angefasst. Fangen wir mit Zeile 20 an.
Dort wird ein Objekt in 19 erzeugt, dessen Zähler dann hochgezählt wird. Das ist ein neues Objekt, was nur im Kontext der Methode existiert. Kann also kein Einfluss auf den Zähler an Stelle 1 haben. Also bleibt nur Zeile 9. Da gilt Zähler des aktuellen Elements = Zähler des aktuellen Elements + 1.
Da der initialwert vom Zähler pro Element 0 ist und für jedes Element diese Zeile genau einmal durchlaufen wird, ist er danach 1.
 
Beste Antwort
H

httpdigest

Top Contributor
(diese Antwort ist nicht ernst gemeint, sondern sollte nur den TE darauf aufmerksam machen, möglichst spezifische Fragen zu stellen)

Warum erfolgt folgende Ausgabe und warum?​

Warum, und vor allem: warum?
Antwort: Weil du am Ende ein System.out.println() hast.
 
P

Panda9296

Bekanntes Mitglied
Vielen Dank für eure Antworten. Ich habe es verstanden.
ich finde den Code auch nicht so gut lesbar. Vielleicht versuchst du, den Code einfach verständlicher für dich selbst zu formulieren. Beispielsweise könntest du statt x=x+1 einfach x++ machen, sodass du auf den ersten Blick einfach siehst, was passiert. Ich denke du verwirrst dich auch mit den Variablennamen selbst. Vielleicht versuchst du auch hier etwas aussagekräftiges zu nehmen, damit du deinen Code in 5 Wochen auch noch sauber lesen kannst. Eine weitere Möglichkeit ist die, das du durch Kommentare versuchst deinen Code auch zu beschreiben, denn wenn du längere Programme hast, wird es dir auch hier schwerer fallen, Code nachzuvollziehen. ( auch bzw. vor allem dein eigener). Es gibt mehrere Möglichkeiten Kommentare zu entwerfen =) : JavaDoc, einzeilige Kommentare und auch mehrzeilige Kommentare. Um vielleicht Schleifen besser nachvollziehen zu können, versuche dich doch mal an Kontrollflussaufgaben, indem du versuchst eine Krone oder auch was anderes auszugeben. Versuche dies auf unterschiedlicher Art und Weise .
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Ausgabe erfolgt in JAR-Datei nicht Java Basics - Anfänger-Themen 3
S Java - Double-Array-Wertzuweisung erfolgt nicht Java Basics - Anfänger-Themen 4
D Split erfolgt nicht an der gewünschten Stelle Java Basics - Anfänger-Themen 3
D Folgende Fehlermeldung bei der Installation von JAVAFX Java Basics - Anfänger-Themen 1
B Folgende Abfrage dynamisch programmieren? Java Basics - Anfänger-Themen 8
A Folgende Nullen einer Kommazahl aus String entfernen Java Basics - Anfänger-Themen 3
B was bedeuten folgende warnungen in eclipse.. Java Basics - Anfänger-Themen 2
Y Was macht folgende Regular Expression Java Basics - Anfänger-Themen 2
M Wie bilde ich folgende Java Klassen in UML ab Java Basics - Anfänger-Themen 2
M java applet für für folgende onlineapplikation sinvoll? Java Basics - Anfänger-Themen 3
A Was bedeutet folgende Programmcodezeile genau Java Basics - Anfänger-Themen 6
H Datenstruktur für folgende Daten Java Basics - Anfänger-Themen 8
G Warum ist der folgende Code korrekt? Java Basics - Anfänger-Themen 2
R Call-by-Value, Call-by-Reference, Call-by-Name Ausgabe Java Basics - Anfänger-Themen 1
JavaClap "Bruchrechner" liefert Fehler/keine Ausgabe bei Addition und Subtraktion Java Basics - Anfänger-Themen 0
C Ausgabe in der Konsole Java Basics - Anfänger-Themen 11
M Problem bei Ausgabe Java Basics - Anfänger-Themen 7
C Konvertierung des int typs in den double typ für die Ausgabe mit Nachkommastellen Java Basics - Anfänger-Themen 4
A Ausgabe mit boolean Java Basics - Anfänger-Themen 3
K Probleme bei der Ausgabe - komme nicht weiter :/ Java Basics - Anfänger-Themen 15
G Problem bei der Ausgabe einer Main Claase Java Basics - Anfänger-Themen 7
Y Methode + Parameters + Ein und Ausgabe Java Basics - Anfänger-Themen 1
K Methodenaufruf /-ausgabe Java Basics - Anfänger-Themen 5
A Wiederholte Ausgabe vermeiden Java Basics - Anfänger-Themen 16
B Collections Objektreferenz-ID in der Ausgabe (Comparator Interface) Java Basics - Anfänger-Themen 2
M Wie analysiert JSON eine toString-Ausgabe ? Java Basics - Anfänger-Themen 1
T Vererbung Verschiedene Fahrzeugtypen mit unterschiedlicher Ausgabe Java Basics - Anfänger-Themen 17
T Ausgabe einer for Schleife Java Basics - Anfänger-Themen 2
S Elemente eines Arrays bei Ausgabe auslassen Java Basics - Anfänger-Themen 2
M Ausgabe einer Liste welche mehrere Stacks enthält Java Basics - Anfänger-Themen 3
T Text-Ausgabe für Textadventure - Organisation Java Basics - Anfänger-Themen 5
G Unterklassen (Klasse für Ausgabe) Java Basics - Anfänger-Themen 4
N Eingabe des Users direkt hinter die Ausgabe Java Basics - Anfänger-Themen 3
J Methode zur Ausgabe eines Dreiecks aus Sternen schreiben? Java Basics - Anfänger-Themen 2
ZH1896ZH Wieso diese Ausgabe?? Java Basics - Anfänger-Themen 10
J Fragen zum Code aus dem Buch "Schrödinger programmiert Java 2.te Ausgabe" Java Basics - Anfänger-Themen 6
B Keine Ausgabe .. Woran liegt das? Ich komme nicht weiter Java Basics - Anfänger-Themen 14
K Rechtsbündige Ausgabe von Zahlen Java Basics - Anfänger-Themen 6
V Erste Schritte for-Schleife; Ausgabe soll alle 5 Sekunden erfolgen. Java Basics - Anfänger-Themen 4
X Threads Zwei Threads, aber doppelte Ausgabe verhindern (synchronized) Java Basics - Anfänger-Themen 54
J Ausgabe Gesamtpreis Java Basics - Anfänger-Themen 39
E Variablen in formatierter Ausgabe Java Basics - Anfänger-Themen 15
B HQL / Hibernate, GroupBy und Ausgabe als Double Java Basics - Anfänger-Themen 1
J StrinBuffer in der Ausgabe Java Basics - Anfänger-Themen 4
H ausgabe? Java Basics - Anfänger-Themen 32
B Ausgabe Zahlenreihe Horizontal Java Basics - Anfänger-Themen 3
V Neue Ausgabe von toString nach Methodenaufruf Java Basics - Anfänger-Themen 9
N Wochentagberechner Ausgabe funktioniert nicht Java Basics - Anfänger-Themen 7
K Array Ausgabe Java Basics - Anfänger-Themen 2
L Datentypen Ausgabe von eigenem Datentypen Java Basics - Anfänger-Themen 2
C 1x1 Ausgabe auf dem Bildschirm Java Basics - Anfänger-Themen 3
L Fehler im Programm bei Ausgabe Java Basics - Anfänger-Themen 21
J Doppelte Ausgabe erzeugen Iterator Java Basics - Anfänger-Themen 6
F Warum ist die Ausgabe hier 1? Java Basics - Anfänger-Themen 4
Bun17 Keine Ausgabe in der Konsole Java Basics - Anfänger-Themen 2
H Ausgabe Java Basics - Anfänger-Themen 6
U Ausgabe von Dateiinhalt während Programmnutzung fehlerhaft Java Basics - Anfänger-Themen 3
Jackii ArrayList ausgabe ohne Dopplung Java Basics - Anfänger-Themen 11
F Erste Schritte Subnet Calculator - Ausgabe der NetID und der Broadcast Java Basics - Anfänger-Themen 4
D Wiederholende Ausgabe Java Basics - Anfänger-Themen 3
G Exception und Ausgabe der Duplikate Java Basics - Anfänger-Themen 6
A Datei Ein und Ausgabe FileWriter und printWriter Java Basics - Anfänger-Themen 5
S Doppel For Schleife mit Arrays - Problem bei der Ausgabe Java Basics - Anfänger-Themen 4
A Erste Schritte Ausgabe eines compare Programms Java Basics - Anfänger-Themen 4
I Input/Output System.out Ausgabe aktualisieren, ohne Konsole vollzuspamen Java Basics - Anfänger-Themen 2
D Input/Output ArrayList ausgabe Java Basics - Anfänger-Themen 4
B toString mit optionaler Ausgabe überrschreiben Java Basics - Anfänger-Themen 5
D Auswahl und Ausgabe erstes Programm Java Basics - Anfänger-Themen 8
I Ausgabe von Arrays Java Basics - Anfänger-Themen 2
W Wie lasse ich meine Ausgabe nach dem Lesen verschwinden ? Java Basics - Anfänger-Themen 1
karlmasutra Ausgabe in ein Array schreiben Java Basics - Anfänger-Themen 14
L Scanner Ausgabe Java Basics - Anfänger-Themen 37
L Input/Output Wieso kommt diese Ausgabe? Java Basics - Anfänger-Themen 12
G Methode liefert "Min@15db9742" als Ausgabe Java Basics - Anfänger-Themen 2
S Vergleich zweier ArrayLists mit Ausgabe an dritte ArrayList Java Basics - Anfänger-Themen 5
S While-Schleifen Ausgabe als String? Java Basics - Anfänger-Themen 1
T Input/Output Leerzeilen in Ausgabe -> finde den Fehler nicht Java Basics - Anfänger-Themen 10
L Reihenfolge Ausgabe Java Basics - Anfänger-Themen 5
L Variablen CharArray Ausgabe - Buchstabensalat Java Basics - Anfänger-Themen 5
T Vergleich und Ausgabe von Zahlen Java Basics - Anfänger-Themen 1
M Ausgabe einer kleinen Aufgabe Java Basics - Anfänger-Themen 2
N Datei Zeilenweise einlesen, Ausgabe mehrere Arrays Java Basics - Anfänger-Themen 7
O Ausgabe als .txt Datei speichern mit FileWriter Java Basics - Anfänger-Themen 2
M Erste Schritte Doppelte Ausgabe? (JList) Java Basics - Anfänger-Themen 1
Henri Die Ausgabe stimmt leider nicht Java Basics - Anfänger-Themen 9
D Array Ausgabe Java Basics - Anfänger-Themen 2
TomatenBrot447 Mit toString eine Ausgabe liefern wie in einer schon implementierten Methode ? Java Basics - Anfänger-Themen 13
TomatenBrot447 Mit toString eine Ausgabe liefern wie in einer schon implementierten Methode ? Java Basics - Anfänger-Themen 1
D Java-Ausgabe Java Basics - Anfänger-Themen 2
S Ausgabe gibt nur Arrayadresse aus... Java Basics - Anfänger-Themen 4
A Verständnisproblem Ausgabe Do-While-Schleife Java Basics - Anfänger-Themen 3
E Input/Output Switch ausgabe anpassen bzw. anders darstellen Java Basics - Anfänger-Themen 13
X Streams und Ausgabe - lässt sich das einfacher schreiben oder schöner schreiben? Java Basics - Anfänger-Themen 5
J Spezielle Ausgabe Formatierung Java Basics - Anfänger-Themen 4
E Frage über Speichern und Ausgabe Java Basics - Anfänger-Themen 7
MrDramasetter Ausgabe Java Basics - Anfänger-Themen 6
M Ausgabe eines Arrays auf Label (Javafx) Java Basics - Anfänger-Themen 4
J Verstehe meine HashSet Ausgabe nicht Java Basics - Anfänger-Themen 5
Khorgoroth Erste Schritte Keine Ausgabe Java Basics - Anfänger-Themen 2
C Binärbaum mit grafischer Ausgabe Java Basics - Anfänger-Themen 0

Ähnliche Java Themen

Anzeige

Neue Themen


Oben