Quoted
Original von Lucky
Number x = new Integer(Integerzahl);
Quoted
Original von Lucky
Aber wenn ich doch eine Number bekomme, die Prozedur zur Umwandlung aber Integer erwartet, dann aber sogar einen String ausspuckt, der wiederum in ein Number umgewandelt werden muss, weil es das Feld so erwartet, kann ich mir nicht Vorstellen, das Eure Lösung kürzer wäre
Quoted
Original von Lucky
Ich möchte nicht diese Zahl einfach nochmal auf dem ergebnisfeld angezeigt haben, sondern sie vorher umwandeln. Zum Beispiel möchte ich sie in eine Binärzahl umwandeln und dann ausgeben. Das funktioniert mit dem folgendem Befehl:
Quoted
public class IntegerField extends RadixNumberField
Quoted
setRadix
public void setRadix(int radix)Sets the radix to the given value.
Parameters:
radix - the radix
Date of registration: Oct 17th 2003
Location: Dresden
Occupation: Um ein bißchen mehr Ahnung zu haben als andere
Quoted
Original von PhilRM
Quoted
Original von Lucky
Number x = new Integer(Integerzahl);
Quoted
Original von Lucky
Aber wenn ich doch eine Number bekomme, die Prozedur zur Umwandlung aber Integer erwartet, dann aber sogar einen String ausspuckt, der wiederum in ein Number umgewandelt werden muss, weil es das Feld so erwartet, kann ich mir nicht Vorstellen, das Eure Lösung kürzer wäre
Der Punkt ist - im Bezug auf deinen obigen Post - dass du bis auf den Aufruf überladener Methoden keine Upcasts brauchst, und damit auch nicht aus einem Integer ein Number erzeugen musst. Wenn Number erwartet wird, kannst du auch einen beliebige Subtype von Number zuweisen.
![]() |
Source code |
1 2 3 4 5 6 7 8 9 |
class X { void y(Number z) {} { y(new Integer(0)); } } |
Date of registration: Oct 17th 2003
Location: Dresden
Occupation: Um ein bißchen mehr Ahnung zu haben als andere
Quoted
Original von PhilRM
Sorry, aber du sprichst hier von den Grundlagen der Objektorientierung. Natürlich geht das.
![]()
Source code
1 2 3 4 5 6 7 8 9 class X { void y(Number z) {} { y(new Integer(0)); } }
Falls es in deinem konkreten Fall in der Methode "IntegerField.setField()", die ich nicht kenne, nicht geht (d.h. im innern finden Typ-Tests statt), dann ist sie entweder schlecht implementiert oder im APIDOC sollte was über erlaubte Typen stehen (auch in dem Fall ist sie, wenn mans genau nimmt, schlecht implementiert)