Befehlsreferenz Java: Unterschied zwischen den Versionen

Aus Informatik-Box
Zur Navigation springen Zur Suche springen
Zeile 381: Zeile 381:
|-
|-
| Einlesen einer ganzen Zahl. Ist die Eingabe keine Zahl, wird ein Fehler produziert.
| Einlesen einer ganzen Zahl. Ist die Eingabe keine Zahl, wird ein Fehler produziert.
| <span style="white-space:nowrap">'''int konsole.nextInt()'''</span>
| {{nowrap|'''int konsole.nextInt()'''}}
| <syntaxhighlight lang="java">
| <syntaxhighlight lang="java">
int eingabe = konsole.nextInt();
int eingabe = konsole.nextInt();
Zeile 387: Zeile 387:
|-
|-
| Einlesen einer Textzeile. Die Eingabe muss mit {{Button|ENTER}} abgeschlossen werden.
| Einlesen einer Textzeile. Die Eingabe muss mit {{Button|ENTER}} abgeschlossen werden.
| <span style="white-space:nowrap">'''String konsole.nextLine()'''</span>
| {{nowrap|'''String konsole.nextLine()'''}}
| <syntaxhighlight lang="java">
| <syntaxhighlight lang="java">
String eingabe = konsole.nextLine();
String eingabe = konsole.nextLine();

Version vom 23. Dezember 2019, 09:06 Uhr

Diese Übersicht fasst die (für die Schule) wichtigsten Java-Befehle und -Konstrukte auf einer Seite zusammen.

Eine vollständige Liste aller Java-Befehle kann in der Java API Dokumentation nachgeschlagen werden.

Gezieltere Informationen gibt es hier im Wiki, zum Beispiel im Lernpfad:Objektorientierte Programmierung mit Java oder Lernpfad:Würfelspiel in Java.

Das Inhaltsverzeichnis und die Suchfunktion in eurem Browser helfen euch beim Auffinden von Informationen. Drückt dazu Strg+F und gebt einen Suchbegriff ein (z.B. „Zufall“).

Die Syntax der Sprachelemente ist zum Teil als Syntaxdiagramm dargestellt.

Kommentare

Zeilen, die mit // beginnen werden vom Programm ignoriert. Sie dienen dazu, den Quelltext mit Kommentaren zu versehen, die das Verständnis erleichtern.

// Ich werde nicht ausgeführt
// System.out.println("Ich auch nicht");
System.out.println("Ich aber"); // Ab hier wird wieder ignoriert

Um größere Teile des Quelltextes zu ignorieren können die Symbole /* und */ benutzt werden.

/*
Ich werde nicht ausgeführt


System.out.println("Ich auch nicht");
*/
System.out.println("Ich aber");

Datentypen

Name Beschreibung Datentyp Beispielwerte
Integer Ganze Zahlen int 1, 4, 19, 1295
Double Gleitkommazahlen double 4.5, 6.1, 7.5
Boolean Wahrheitswerte boolean true, false
Character Einzelne Unicode-Zeichen char 'x', 'a'

Eine vollständige Liste ist im Lernpfad:Objektorientierte Programmierung mit Java zu finden.

Strings (Texte)

Strings bestehen aus einer Kette von chars, sie gehören aber nicht zu den primitiven Datentypen, sondern sind Objekte. Daher gelten für Strings einige Besonderheiten:

  1. Strings besitzen Methoden, um mit den enthaltenen Zeichnketten zu arbeiten:
    1. int String.length() - Ermittelt die Länge der Zeichenkette.
    2. String String.toUpperCase() - Erstellt eine Kopie der Zeichenkette, die nur aus Großbuchstaben besteht.
    3. Und noch viele mehr ...
  2. Strings müssen mit der equals-Methode verglichen werden, nicht mit ==:
    String hallo = "Hallo, Welt!";
    if( hallo.equals("Hallo und Tschüß!") ) {
    	System.out.println("Die Strings passen nicht!");
    }
    

Typumwandlungen

Operatoren

Rechenoperatoren

Operator Beschreibung Beispiel
+
-
*
/
Addition, Subtraktion, Multiplikation, Division
5 + 3 // = 8
5 - 3 // = 2
5 * 3 // = 15
5 / 2 // = 2.5
+=
-=
*=
/=
Kurzformen für die Veränderung einer Zahlvariablen.
i += 3 // i = i + 1
i -= 3 // i = i - 1
i *= 3 // i = i * 3
i /= 2 // i = i / 2
% Modulo-Operator: Berechnet den Rest eine ganzzahligen Division.
5 % 3 // = 2
1 % 2 // = 1
8 % 4 // = 0

Vergleichsoperatoren

Operator Beschreibung Beispiel
== Zwei primitive Datentypen auf Gleichheit prüfen. 5 == i
!= Zwei primitive Datentypen auf Ungleichheit prüfen. 5 != i
> "größer als" 5 > i
< "kleiner als" 5 < i
>= "größer oder gleich" 5 >= i
<= "kleiner oder gleich" 5 <= i
equals(Object o) String-Vergleiche "Hallo".equals("Welt")

Logische Verknüpfungen

Operator Beschreibung Beispiel
&& "UND": Ist wahr, wenn der linke und der rechte Ausdruck wahr sind. true && (a == b)
|| "ODER": Ist wahr, wenn der linke oder der rechte Ausdruck wahr sind (oder auch beide). true || (a == b)
! "NICHT": Negiert den Ausdruck. !(a == b)

Allgemeine Programmkonstrukte

Variablen

Methoden

Programmkonstrukte zur Ablaufsteuerung

Bedingte Anweisungen

Beschreibung Syntax Beispiel
if-Anweisung

(Bedingte Anweisung)

Java-Syntax-If.png
if( i > 5 ) {
	System.out.println('i ist grösser als 5');
}
if-else-Anweisung

(Alternative)

Java-Syntax-Ifelse.png
if( i > 5 ) {
	System.out.println('i ist grösser als 5');
} else {
	System.out.println('i ist kleiner oder gleich 5');
}
if-elseif-Anweisung Java-Syntax-Ifelseif.png
if( i > 5 ) {
	System.out.println('i ist grösser als 5');
} elseif( i < 3 ) {
	System.out.println('i ist kleiner als 3');
} else {
	System.out.println('i ist 3, 4 oder 5');
}
switch-Anweisung

Kurzschreibweise für viele if-elseif-Anweisungen hintereinander. Die switch-Anweisung funktioniert nur mit primitiven Datentypen. (Also z.B. mit char, aber nicht mit String.)

Datei:Java-Syntax-Switch.png
int i;
switch( i ) {
	case 1:
	    System.out.println("1 wurde erkannt!");
    	break;
	case 2:
	    System.out.println("2 wurde erkannt!");
    	break;
    default:
	    System.out.println("Keine 1 oder 2!");
    	break;
}

Schleifen

Beschreibung Syntax Beispiel
while-Schleife

(Kopfgesteuerte Schleife, Bedingte Schleife)

Datei:Java-Syntax-While.png
int i = 0;
while( i < 10 ) {
	System.out.println("i ist jetzt " + i);
	i += 1;
}
do-while-Schleife

(Fußgesteuerte Schleife)

Datei:Java-Syntax-Dowhile.png
boolean isRunnign = true;
do {
	// ...
} while( isRunning );
for-Schleife

(Zählschleife)

Datei:Java-Syntax-For.png
for( int i = 0; i < 100; i++ ) {
	System.out.println("i ist jetzt " + i);
}

Fehlerbehandlung

Beschreibung Syntax Beispiel
try-catch-Anweisung Datei:Java-Syntax-Trycatch.png
try {
	// Anweisungen die ggf. einen Fehler (Exception) produzieren
	// Sobald ein Fehler produziert wurde, wird in den catch-Teil gesprungen
} catch( Exception e1 ) {
	System.err.println("Ein Fehler ist aufgetreten!");
}
try-catch-finally-Anweisung Datei:Java-Syntax-Trycatch.png
try {
	// Anweisungen die ggf. einen Fehler (Exception) produzieren
	// Sobald ein Fehler produziert wurde, wird in den catch-Teil gesprungen
} catch( Exception e1 ) {
	System.err.println("Ein Fehler ist aufgetreten!");
} finally {
	System.err.println("Diese Anweisung wird auf jeden Fall ausgeführt.");
}

Klassen aus der Java-API

Ausgaben

Beschreibung Beispiel
Ausgabe von Text in der Konsole
System.out.print("Hallo, Welt!");
Ausgabe von Text mit Zeilenumbruch in der Konsole
System.out.println("Hallo, Welt!");
Ausgabe von Text mit Formatierungen in der Konsole
System.out.printf("%s, %s!\n", "Hallo", "Welt");
Ausgabe von Text in der Fehlerkonsole
System.err.println("Hallo, Welt!");

java.lang.Math

Sammlung von mathematischen Hilfsfunktionen (Runden, Wurzel, Logarithmus, ...). Ein vollständige Übersicht findet ihr in der Java API Dokumentation.

Beschreibung Signatur Beispiel
Runden double Math.round( double zahl, isn’t anzahlStellen )
double gerundet = Math.round(14.235, 1);
Zufallszahlen zwischen 0 und 1. (1 wird nie erzeugt.) double Math.random()
Math.random();

java.util.Random

Beschreibung Signatur Beispiel
Zufälliger ganze Zahl von 0 bis max-1 generieren. int nextInt(int max)
Random rand = new Random();
int zufalls = rand.nextInt(100);

java.util.Scanner

Die Klasse Scanner ist eine Hifsklasse, die das Einlesen von Benutzereingaben in der Konsole erleichtert. Zunächst muss ein Objekt der Klasse mit dem Parameter System.in erstellt werden: Scanner konsole = new Scanner(System.in);.

Beschreibung Signatur Beispiel
Einlesen einer ganzen Zahl. Ist die Eingabe keine Zahl, wird ein Fehler produziert. int konsole.nextInt()
int eingabe = konsole.nextInt();
Einlesen einer Textzeile. Die Eingabe muss mit ENTER abgeschlossen werden. String konsole.nextLine()
String eingabe = konsole.nextLine();

Datentyp-Klassen

Beschreibung Beispiel
XXX

Rover Befehle