Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger

Java ist auch eine Insel von Christian Ullenboom
Programmieren für die Java 2-Plattform in der Version 5 (Tiger-Release)
Buch: Java ist auch eine Insel
gp Kapitel 2 Sprachbeschreibung
  gp 2.1 Anweisungen und Programme
  gp 2.2 Elemente der Programmiersprache Java
    gp 2.2.1 Textkodierung durch Unicode-Zeichen
    gp 2.2.2 Unicode-Tabellen unter Windows
    gp 2.2.3 Literale
    gp 2.2.4 Bezeichner
    gp 2.2.5 Reservierte Schlüsselwörter
    gp 2.2.6 Token
    gp 2.2.7 Semantik
    gp 2.2.8 Kommentare
    gp 2.2.9 Funktionsaufrufe als Anweisungen
    gp 2.2.10 Die leere Anweisung
    gp 2.2.11 Der Block
  gp 2.3 Datentypen
    gp 2.3.1 Primitive Datentypen
    gp 2.3.2 Wahrheitswerte
    gp 2.3.3 Variablendeklarationen
    gp 2.3.4 Ganzzahlige Datentypen
    gp 2.3.5 Die Fließkommazahlen
    gp 2.3.6 Alphanumerische Zeichen
    gp 2.3.7 Die Typanpassung (das Casting)
    gp 2.3.8 Lokale Variablen, Blöcke und Sichtbarkeit
    gp 2.3.9 Initialisierung von lokalen Variablen
  gp 2.4 Ausdrücke, Operanden und Operatoren
    gp 2.4.1 Zuweisungsoperator
    gp 2.4.2 Verbundoperatoren
    gp 2.4.3 Präfix- oder Postfix-Inkrement und -Dekrement
    gp 2.4.4 Unäres Minus und Plus
    gp 2.4.5 Arithmetische Operatoren
    gp 2.4.6 Die relationalen Operatoren
    gp 2.4.7 Logische Operatoren
    gp 2.4.8 Reihenfolge und Rang der Operatoren in der Auswertungsreihenfolge
    gp 2.4.9 Überladenes Plus für Strings
    gp 2.4.10 Was C(++)-Programmierer vermissen könnten
  gp 2.5 Bedingte Anweisungen oder Fallunterscheidungen
    gp 2.5.1 Die if-Anweisung
    gp 2.5.2 Die Alternative wählen mit einer if/else-Anweisung
    gp 2.5.3 Die switch-Anweisung bietet die Alternative
  gp 2.6 Schleifen
    gp 2.6.1 Die while-Schleife
    gp 2.6.2 Schleifenbedingungen und Vergleiche mit ==
    gp 2.6.3 Die do/while-Schleife
    gp 2.6.4 Die for-Schleife
    gp 2.6.5 Ausbruch planen mit break und Wiedereinstieg mit continue
    gp 2.6.6 break und continue mit Sprungmarken
  gp 2.7 Methoden einer Klasse
    gp 2.7.1 Bestandteil einer Funktion
    gp 2.7.2 Aufruf
    gp 2.7.3 Methoden ohne Parameter
    gp 2.7.4 Statische Funktionen (Klassenmethoden)
    gp 2.7.5 Parameter, Argument und Wertübergabe
    gp 2.7.6 Methoden vorzeitig mit return beenden
    gp 2.7.7 Nicht erreichbarer Quellcode bei Funktionen
    gp 2.7.8 Rückgabewerte
    gp 2.7.9 Methoden überladen
    gp 2.7.10 Vorgegebener Wert für nicht aufgeführte Argumente
    gp 2.7.11 Finale lokale Variablen
    gp 2.7.12 Rekursive Funktionen
    gp 2.7.13 Die Ackermann-Funktion
    gp 2.7.14 Die Türme von Hanoi
  gp 2.8 Dokumentationskommentare
    gp 2.8.1 Ein Dokumentationskommentar setzen
    gp 2.8.2 Mit javadoc eine Dokumentation erstellen
    gp 2.8.3 Generierte Dateien
    gp 2.8.4 Weitere Dokumentationskommentare
    gp 2.8.5 Schalter für das Programm javadoc
    gp 2.8.6 JavaDoc und Doclets
    gp 2.8.7 Bitoperationen
    gp 2.8.8 Vorzeichenlose Bytes in ein Integer und Char konvertieren
    gp 2.8.9 Variablen mit Xor vertauschen
    gp 2.8.10 Die Verschiebeoperatoren
    gp 2.8.11 Setzen, Löschen, Umdrehen und Testen von Bits
    gp 2.8.12 Der Bedingungsoperator
  gp 2.9 Einfache Benutzereingaben


Galileo Computing

2.9 Einfache Benutzereingabetoptop

Bei den ersten eigenen Programmen möchte jeder neben der Ausgabe auch eine Eingabe in Java realisieren, damit ein Programm auch Benutzereingaben verarbeiten kann. Der Weg über die Befehlszeile ist dabei steinig, da Java eine Eingabe nicht so einfach wie eine Ausgabe vorsieht. Wer dennoch auf Benutzereingaben reagieren möchte, der kann dies über einen grafischen Eingabedialog JOptionPane realisieren.

Listing 2.14   InputWithDialog.java


import javax.swing.*;

class InputWithDialog
{
  public static void main( String args[] )
  {
    String s = JOptionPane.showInputDialog( "Wo kommst du denn wech?" );

    System.out.println( "Aha, du kommst aus " + s );

    System.exit( 0 );                           // Beendet das Programm
  }
}

Soll die Zeichenkette in eine Zahl konvertiert werden, dann können wir die Methode parseInt() nutzen.


Beispiel   Zeige einen Eingabedialog an, der zur Zahleneingabe auffordert. Quadriere die eingelesene Zahl und gib sie auf dem Bildschirm aus.

String s = JOptionPane.showInputDialog( "Bitte Zahl eingeben" );
int i = Integer.parseInt( s );
System.out.println( i * i );

Fehler müssten zusätzlich in einen try/catch-Block gesetzt werden, da parseInt() eine NumberFormatException auslöst, wenn Buchstaben zur Umwandlung anstehen.


Beispiel   Es soll ein einzelnes Zeichen eingelesen werden.

String s = JOptionPane.showInputDialog( "Bitte Zeichen eingeben" );
char c = 0;
if ( s != null && s.length() > 0 )
  c = s.charAt( 0 );


Beispiel   Ein Wahrheitswert soll eingelesen werden. Dieser Wahrheitswert soll vom Benutzer als Zeichenkette true oder false beziehungsweise 1 oder 0 eingegeben werden.

String s = JOptionPane.showInputDialog( "Bitte Wahrheitswert eingeben" );
boolean buh;
if ( s != null )
  if (s.equals("0") || s.equals("false") )
    buh = false;
  else if (s.equals("1") || s.equals("true") )
    buh = true;





Copyright © Galileo Press GmbH 2004
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press GmbH, Gartenstraße 24, 53229 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de