Logo des digitalen Schulbuchs inf-schule.de. Schriftzug in Zustandsübergangsdiagramm eines endlichen Automaten.

Java - Schnipsel

Worum geht es hier?

Hier findest Du kurze Codebeispiele zum Nachschlagen für häufig zu erledigende Aufgaben.

Zahlen

Erzeugen einer Zufallszahl

// Erzeugt eine Zufallszahl zwischen 0 und 9
new java.util.Random().nextInt(10);

// Wenn man das Paket java.util importiert hat, reicht natürlich auch:
new Random().nextInt(10)

Umwandeln einer Zeichenkette in eine Zahl

Integer.parseInt("42")     // Liefert die Zahl 42 zurück.

Umwandeln einer Zahl in eine Zeichenkette: Am einfachsten lässt sich eine Zahl in eine Zeichenkette umwandeln, wenn man sie mit einer - eventuell auch leeren - Zeichenkette verknüpft.

"Die Zahl ist " + 42
"" + 42

Ausgabe

Ausgabe von Text auf der Standardausgabe

System.out.println("Hallo Welt");

Grafische Ausgabe von Text in einem Fenster

// Klasse JOptionPane aus Paket javax.swing
// nach Import durch javax.swing.*
JOptionPane.showMessageDialog(null, "Hallo Welt");

// ohne Import
javax.swing.JOptionPane.showMessageDialog(null, "Hallo Welt");

Eingabe

Am einfachsten kann man Eingaben auf Konsolenebene durch Verwendung der Klasse Scanner realisieren. Ein Scanner muss bei der Erzeugung die Eingabequelle übergeben bekommen, also z.B. System.in für die Standardeingabe (in BlueJ die Konsole). In den meisten Fällen möchte man wahrscheinlich eine Zeichenkette oder eine Zahl eingeben. Vorausgesetzt man hat das Paket java.util importiert, lässt sich ein Scanner z.B. folgendermaßen nutzen:

import java.util.*; // Noch vor der Klassendefinition importieren
...
Scanner scanner = new Scanner(System.in);
String s = scanner.nextLine(); // Speichert eine mit Benutzer eingegebene Zeichenkette in s
int a = scanner.nextInt();     // Speichert eine vom Benutzer eingegebene ganze zahl in a
// Kompaktere Schreibweise mit immer neuem Scanner-Objekt
s = new Scanner(System.in).nextLine();
a = new Scanner(System.in).nextInt();

Threads

Ein Thread, der unendlich läuft, sich aber kontrolliert beenden lässt

class Endlosfaden extends Thread {
    private boolean finished = false;
    private String ausgabe;

    public Endlosfaden(String s)
    {
        ausgabe = s;
    }

    public void terminate() {
        finished = true;
    }

    public void run() {
        while (!finished) {
            System.out.println(ausgabe);
        }
        System.out.println("Tschöö");
    }
}

Obigen Thread zwei mal erzeugen, starten und kontrolliert beenden

Endlosfaden t1 = new Endlosfaden("Hallo");
Endlosfaden t2 = new Endlosfaden("Bonjour");
t1.start(); // NICHT t.run(); die Methode wird intern aufgerufen.
t2.start();
// Wichtige Dinge abwarten
t1.terminate();
t2.terminate();

Proxy

Wenn der Zugriff ins Internet über einen Proxy erfolgt, dann müssen für Java-Programme entsprechende Einstellungen vorgenommen werden. Dies lässt sich z.B. im Quellcode durch Benutzung der statischen Methode System.setProperty(...) errreichen.

System.setProperty("proxySet", "true");
System.setProperty("proxyHost", "192.168.0.254");
System.setProperty("proxyPort", "3128");
X

Fehler melden

X

Suche