Bei if funktion dezimal in char umwandeln (Ausgabe)

VuLTuRe666

Grünschnabel
Hi!

Ich würde gerne bei einer If funktion, bei der der Wert (in meinem Fall Flächeninhalt A) unbekannt ist, als Ausgabe das Fragezeichen ? ausgeben lassen. Wie mache ich das? Bei mir gibt der immer den Wert 63 aus, ist der Dezimalwert für das ?-Zeichen..

Vielen dank im voraus!
 

VuLTuRe666

Grünschnabel
mit dem TypeCast versuche ich das ja, Netbeans sagt mir keine Fehlermeldung, jedoch ist die Ausgabe immernoch 63 anstatt ein '?'.. :-/
 

VuLTuRe666

Grünschnabel
Hi!

if(flächeninhalt<=0){flächeninhalt=(char) '?';}

Das ist der Code an der Stelle...Die Ausgabe produziert dann wie gesagt die Zahl 63.. Danke!
 

Cromon

Erfahrenes Mitglied
Hallo VuLTuRe666

Anders als zum Beispiel in Javascript haben Variablen in Java einen festen Typen. Ich nehme mal an deine Variable flächeninhalt ist vom Typ int. Ein int ist eine Zahl und kein Zeichen. Selbst wenn du ihm einen char zuweist bleibt er eine Zahl, in dem Fall halt einfach der Zeichencode von '?'.

Viele Grüsse
Cromon
 

vfl_freak

Premium-User
Moin,

if(flächeninhalt<=0){flächeninhalt=(char) '?';}
Das ist der Code an der Stelle...Die Ausgabe produziert dann wie gesagt die Zahl 63.. Danke!
Ist vom Typ float aber wird wohl keinen Unterschied machen dann
(a) (char)'?' ist ohne Quark, da '?' alleine schon einen Character bezeichnet (im Gegensatz zu doppelten Hochkommata, die wiederum eine Zeichenkette bezeichnen ....

(b) wenn flaecheninhalt wirklich von Typ float ist, dann wirst Du dieser Variablen wohl kaum einen Character zuweisen können!

Poste mal mehr Code, damit man den Kontext versteht!

BTW: und entferne den Umlaut, sowas kann immer mal gerne grundlegende Probleme schaffen !!

Gruß
Klaus