16.11.2013 Aufrufe

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Programmieren</strong> <strong>in</strong> <strong>Java</strong><br />

3.1.4 Externe und <strong>in</strong>terne Darstellung von numerischen Werten<br />

Numerische Werte wer<strong>de</strong>n<br />

- extern (z.B. im Textfeld e<strong>in</strong>es GUI) durch Zeichenketten dargestellt<br />

- <strong>in</strong>tern als Werte von e<strong>in</strong>em <strong>de</strong>r elementaren Datentypen byte, short, <strong>in</strong>t, long,<br />

float o<strong>de</strong>r double o<strong>de</strong>r als Objekte von e<strong>in</strong>em <strong>de</strong>r Referenzdatentypen (Wrapper-<br />

Klassen) Byte, Short, Integer, Long o<strong>de</strong>r Double. Diese Klassen stellen<br />

Metho<strong>de</strong>n zur Umwandlung von numerischen Werten <strong>in</strong> Zeichenketten und<br />

umgekehrt zur Verfügung. Da nicht je<strong>de</strong> beliebige Zeichenkette als <strong>in</strong>terne<br />

Darstellung e<strong>in</strong>er Zahl <strong>in</strong>terpretiert wer<strong>de</strong>n kann, kann beim Versuch <strong>de</strong>r<br />

Umwandlung e<strong>in</strong>e NumberFormatExpression auftreten, die normalerweise mit<br />

e<strong>in</strong>er try-catch-Anweisung entsprechend behan<strong>de</strong>lt wer<strong>de</strong>n sollte.<br />

Bsp. 190 : E<strong>in</strong>lesen und Ausgeben von numersichen Werten<br />

import java.lang.*;<br />

import java.awt.*;<br />

import java.awt.event.*;<br />

public class EchoZahl extends Object<br />

{<br />

// E<strong>in</strong>lesen und Ausgeben von Zeichenketten ueber<br />

// e<strong>in</strong>e grafische Benutzeroberflaeche<br />

private static TextField e<strong>in</strong>gabeTextFeld = new TextField(20);<br />

private static TextField ausgabeTextFeld = new TextField(20);<br />

public static void ma<strong>in</strong>(Str<strong>in</strong>g args[])<br />

{<br />

Frame fenster = new Frame("Echo");<br />

fenster.addW<strong>in</strong>dowListener(new W<strong>in</strong>dowAdapter()<br />

{<br />

public void w<strong>in</strong>dowClos<strong>in</strong>g(W<strong>in</strong>dowEvent e)<br />

{<br />

System.exit(0);<br />

}<br />

});<br />

// TextField e<strong>in</strong>gabeTextFeld = new TextField(20);<br />

Label e<strong>in</strong>gabeTextFeldLabel = new Label("Zahlene<strong>in</strong>gabe:");<br />

e<strong>in</strong>gabeTextFeld.setEditable(true);<br />

e<strong>in</strong>gabeTextFeld.addActionListener(new ActionListener()<br />

{<br />

public void actionPerformed(ActionEvent ae)<br />

{<br />

Double dRef = null;<br />

Str<strong>in</strong>g s = e<strong>in</strong>gabeTextFeld.getText();<br />

try {<br />

dRef = new Double(s);<br />

}<br />

catch (NumberFormatException nfe)<br />

{<br />

System.err.pr<strong>in</strong>tln(nfe.toStr<strong>in</strong>g());<br />

}<br />

double d = dRef.doubleValue();<br />

d++;<br />

Str<strong>in</strong>g s1 = Double.toStr<strong>in</strong>g(d);<br />

Str<strong>in</strong>g s2 = Str<strong>in</strong>g.valueOf(d);<br />

ausgabeTextFeld.setText(s2);<br />

}<br />

});<br />

// TextField ausgabeTextFeld = new TextField(20);<br />

Label ausgabeTextFeldLabel = new Label("Ausgabestr<strong>in</strong>g:");<br />

190 pr14160<br />

212

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!