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 weiß nicht genau, ob das etwas Java-spezifisches ist oder ob es das auch in anderen Programmiersprachen gibt. Ich habe es jetzt nur in Javaprogrammen entdeckt.
Ganz am Anfang hat man ja mal gelernt, dass man niiiemals ein Semikolon nach einer geschweiften Klammer setzen darf, jetzt ist mir aber genau dieses begegnet, unter anderem nach einer Methode oder if-Anweisung.
Kann mir jemand sagen was damit erreicht wird?
also da hat also einfach jemand unnötige Zeichen gesetzt??
Ja, ich meinte nur das Semikolon am Ende. Das andere is mir schon klar
Nagut, dann nehm ich das mal so hin.
Danke!
Ein Semikolon kannst du praktisch überall machen nach }.
Notwendig ist es nur bei einer Array-Initialisierung und Definition einer anonymen inneren Klasse.
verstehst du den code? ein iterator ist ein interface, ich könnte eine klasse schreiben die diese interface implementiert und dann return new MeineKlasse(); eine instanz zurück geben.
ich kann die klasse aber auch innerhalb der return anweisung schreiben. ist etwas unübersichtlihc aber für kleine schachen kann mans machen...
bei beiden passiert das falsche (jedes Syste.out wird jeweils 1 mal ausgeführt) , weil jeweils ein Semikolon nach den runden Klammern steht:
1 Nach if und for steht IMMER nur EINE Methode.
2 Wenn man mehrere Anweisung in eine geschweifte Klammer packt, gelten diese Anweisung zusammen als EINE einzige Anweisung.
3 Ein Semikolon gilt auch als EINE Anweisung
Das heisst in diesen Beispiel, dass die Anweisung:
;
ausgeführt wird, wenn 1+1==3 ist und die andere Anweisung:
;
5 mal ausgeführt wird
das außerdem im code noch 2 System.out.println stehen, hat nix mit der if und for sache zu tun.
Die eckigen Kalmmern um die System.out.println könnte man auch einfach weglassen, würde nix ändern.
Vielen Dank nochmal!
Ich hab den jenigen jetzt mal gefragt und er meinte, dass er sich das inzwischen abgewöhnt hat. Er hatte das wohl noch von irgendeiner anderen Programmiersprache drin. Ich hab mich vorher nur nicht getraut zu fragen, weil ich nich so dumm aussehen wollte Deshalb hab ich lieber erstmal hier nachgefragt.
package testsemikolon;
;;;
public class Main {
;;;
public static void main(String[] args) {
;;;
}
;;;
}
;;;
Compiliert auch. Warum? Was ist denn die Funktion des Semikolons?
Krass vereinfacht, ein Semikolon trennt in einer Liste von Anweisungen/Deklarationen die Anweisungen/Deklarationen voneinander ab*. Oftmals ist der Einfachheit halber auch die leere Anweisung erlaubt, in Java schreibt man dann einfach nichts hin, andere Programmiersprachen haben dafür eine besondere Anweisung, z.B. skip oder pass. Eine Folge von leeren Anweisungen oder Deklarationen hat also die Form ";;;".