Lehrer Nussbaumer - JAVA (eine kleine Einführung ;)

Grundlagen

GUI

Eingabe

Ausgabe

Applikationen

  1. Wurfbahnen
  2. Satellitenbahnen
  3. Interaktion
  4. Notizzettel
  5. Typkonvertierung
  6. Rechner
  7. Mandelbrot-Menge
  8. Julia-Menge

Applets

Servlets

Beispiele

Spiele

IDEs

Skriptum

JAVA-DOCS


-----------------
letzte Änderung:
09 December 2021
-----------------
Lehrer Nussbaumers Seite

... in Arbeit ...

Rechner

Zahlen werden als Zeichenketten in ein "TextField" eingegeben. Diese Eingaben müssen anschließend in Zahlen konvertiert werden. Nach den Rechenoperationen findet wieder eine Konversion in Zeichenketten statt, sodass die Ausgabe - beispielsweise auf einem "Label" möglich wird.

Beispiel:

In einem "BorderLayout" werden die Eingabezeilen und der Operator angeordnet. Das Ergebnis ist auf einem Label (hier "South") sichtbar. Die Rechenoperation wird ausgeführt, sobald der Operator-Button gedrückt wurde. Beachte, wie jedes GUI-Objekt mit dem ActionListener verbunden werden muss!


Code:

import java.awt.*;
import java.awt.event.*;

public class rechner extends Frame implements ActionListener {

    TextField opa;
    TextField opb;
    Button addbut;
    Button subbut;
    Button multbut;
    Button divbut;
    Label ergebnis;

    public static void main(String arguments[]) {
        rechner proggi = new rechner();

        WindowListener wl = new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        };
        proggi.addWindowListener(wl);
        proggi.setLocation(100,100);
        proggi.resize(200,80);
        proggi.show();
    }

    rechner() {
	super("Rechner");

	setLayout(new BorderLayout());
	opa = new TextField("0",5);
	opb = new TextField("0",5);
	addbut = new Button("+");
	ergebnis = new Label("ergebnis");

	opa.addActionListener(this);
	opb.addActionListener(this);
	addbut.addActionListener(this);

	add(opa,"West");
	add(opb,"Center");
	add(addbut, "East");
	add(ergebnis, "South");

    }

    public double addiere( double a, double b) {
	return a+b;
    }

    public double subtrahiere (double a, double b) {
	return a-b;
    }

    public double multipliziere (double a, double b) {
	return a*b;
    }

    public double dividiere (double a, double b) {
	return a/b;
    }

    public void actionPerformed(ActionEvent e) {
        if (e.getSource() == addbut)
            ergebnis.setText(Double.toString( addiere(Double.valueOf(opa.getText()).doubleValue(),Double.valueOf(opb.getText()).doubleValue())));
        if (e.getSource() == subbut)
	    subtrahiere(3,4);
	if (e.getSource() == multbut)
	    multipliziere(3,4);
	if (e.getSource() == divbut)
	    dividiere(3,4);
    }

}

Kommentar:

Beachte die korrekte Typ-Konvertierung!


Aufgabe:

Erweitere Layout und Programmcode so, dass auch die anderen Grundrechnungsarten zur Verfügung stehen!


© Alfred Nussbaumer, Weblog "MiniNuss"