Java ME

Screen-Elemente

Das erste Midlet *

import javax.microedition.lcdui.*;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;

public class HalloMidlet extends MIDlet
{
  public HalloMidlet() { }
  protected void startApp() throws MIDletStateChangeException {
    Form form = new Form( "Hello!" );
    Display.getDisplay( this ).setCurrent( form );
  }
  protected void pauseApp() { }
  protected void destroyApp(boolean b) throws MIDletStateChangeException { }
}

Hinweis! *

Erzeuge ein Alert in den Varianten modal und zeitgesteuert. Weise dem Alert einen Ticker zu.

Listen *

Erzeuge eine Liste mit Elementen in allen drei möglichen Modi und achte auf das Aussehen im Emulator.

 

Ereignisbehandlung

Textboxinhalt *

Hänge an eine TextBox zwei Kommandos: ein OK-Command und ein Abbrechen-Command. Wenn man das OK-Command bestätigt, soll der Inhalt des Textfeldes auf der Konsole der Emulationsumgebung mit System.out.println() ausgegeben werden.

Interaktive Gauge *

Erzeuge ein Form mit der Überschrift "Stimmung". Setzte auf das Form eine interaktive Gauge, die den Wertebreich 0 bis 5 annimmt. Hänge an die Gauge einen Listener. Wenn ein Ereignis auftritt, der Benutzer also einen Wert mit der Gauge anpasst, soll dieses Ereignis mit einem Listener erkannt werden. Im Listener soll wiederum der Wert ausgelesen und abhängig davon der Label der Gauge aktualisiert werden. Ist der Wert 0,1 soll der String "schlecht" angezeigt werden, bei 2,3 "gut" und bei 4,5 "super".

Seriennummer einer Eurobanknote *

Ob eine Eurobanknote für ein Land korrekt ist, bestimmt eine Seriennummer zusammen mit einem "Short Code", der die Banknotendruckerei kennzeichnet. Die Seriennummer setzt sich

  1. aus einem Buchstaben, der das Ausgabeland kennzeichnet
  2. einer zehnstelligen fortlaufenden Nummer und
  3. einer Prüfziffer zusammen.

Damit ist die Seriennummer eine eindeutige Kennung fü den Geldschein, eine Art IP-Nummer fü Banknoten.
Für die unterschiedlichen Länder sind verschiedene Buchstaben reserviert. So steht X für Deutschland.
Um nun zu testen, ob die Seriennummer korrekt aufgebaut ist -- das heißt nicht, dass sie gütig ist --, muss man Quersummenberechnungen über alle Ziffern inklusive der Prüfzimmer bilden. Ein Beispiel: Auf meinem 5-Euroschein steht die Seriennummer X 0791290613 9. Durch Leerzeichen sind Land und Prüfziffer getrennt. Drei Schritte sind für den Test nötig:

  1. Man bildet nun die Quersumme über alle Ziffern: 0+7+9+1+2+9+0+6+1+3+9 = 47.
  2. Für das Land kommt eine Zahl hinzu, die die Stelle des Buchstabens im Alphabet kennzeichnet: X steht an der Stelle 24. Diese Zahl wird zum Ergebnis addiert. Dann ergibt sich 47 + 24 = 71.
  3. Die Seriennummer ist gültig, wenn die Quersumme der Zahl 8 ist. Das stimmt hier, denn 7 + 1 = 8.

Schreibe nun ein Programm mit einem Textfeld, welches die Prüfsumme einer deutschen Banknoten testet. Die Stelle eines Großbuchstabens (char c) im Alphabet bekommt man leicht durch die Berechnung c - 'A'.
Das Ergebnis der Prüfung soll in einem Alert dargestellt werden.
Erweitere das Programm durch die Berechnung auch nicht deutsche Banknoten.

Land Buchstabe
Belgien Z
Deutschland X
Finnland L
Frankreich U
Griechenland Y
Irland T
Italien S
Luxemburg R
Niederlande P
Österreich N
Portugal M
Spanien V

Reserviert sind für Dänemark W, für Großbritannien J und für Schweden K.

Bin ich voll? *

Berechne auf der Grundlage einiger Kenngrößen den Promillegehalt im Blut.

Umrechungskurse *

Im Internet gibt es viele Seiten mit den Wechselkursen ausgewählter Währungen.

RMS

E-Nummern *

Lege ein RecordStore mit dem Namen "Namen" an. Lege ein Record an, welches den eigenen Namen und Vornamen speichert.

Netzwerke

E-Nummern *

Überlege, wie E-Nummern in eine mobile Applikation konvertiert werden können.

Periodentabelle *

Überlege, wie man die Periodentabelle in eine mobile Applikation konvertieren kann.

Chat **

Implementiere ein Chat-System. Ein Server soll Anmeldungen von Clients entgegennehmen. Ein Client schickt Daten an den Server, und dieser verteilt die Nachricht an alle angemeldeten Clients.