J2ME Java Tutorial

import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.List;
import javax.microedition.midlet.MIDlet;
public class J2MEListCheckBox extends MIDlet implements CommandListener {
  private Display display;
  private Command exit;
  private Command submit;
  private List list;
  public J2MEListCheckBox() {
    display = Display.getDisplay(this);
    list = new List("Select Media", List.MULTIPLE);
    list.append("Books", null);
    list.append("Movies", null);
    list.append("Television", null);
    list.append("Radio", null);
    exit = new Command("Exit", Command.EXIT, 1);
    submit = new Command("Submit", Command.SCREEN, 2);
    list.addCommand(exit);
    list.addCommand(submit);
    list.setCommandListener(this);
  }
  public void startApp() {
    display.setCurrent(list);
  }
  public void pauseApp() {
  }
  public void destroyApp(boolean unconditional) {
  }
  public void commandAction(Command command, Displayable Displayable) {
    if (command == submit) {
      boolean choice[] = new boolean[list.size()];
      StringBuffer message = new StringBuffer();
      list.getSelectedFlags(choice);
      for (int x = 0; x < choice.length; x++) {
        if (choice[x]) {
          message.append(list.getString(x));
          message.append(" ");
        }
      }
      Alert alert = new Alert("Choice", message.toString(), null, null);
      alert.setTimeout(Alert.FOREVER);
      alert.setType(AlertType.INFO);
      display.setCurrent(alert);
      list.removeCommand(submit);
    } else if (command == exit) {
      destroyApp(false);
      notifyDestroyed();
    }
  }
}