Java BlueJ erkennt long nicht?
Wie auf dem Bild zu sehen ist gab ich eine Zahl ein, die für Integer natürlich zu groß ist aber mit long müsste es doch gehen. Wieso erkennt das Programm nicht, dass ich da long hingeschrieben habe?
3 Antworten
Für long wäre das vermutlich auch zu groß. Du müsstest aber das anders schreiben, dass du long bekommst:
private long x = 9999999l
An integer literal is of type long if it is suffixed with an ASCII letter L or l (ell); otherwise it is of type int
https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.1
Bevor du anfängst zu coden, solltest du dich mit Datentypen beschäftigen. Die haben auch nur einen gewissen Werte Bereich.
Wenn du den Fehler lesen würdest, liegt es nicht daran dass das Programm inkompetent ist, sondern der vor dem Bildschirm.
Wenn du so große Zahlen willst oder brauchst, nutz BigInteger.
"Bevor du anfängst zu coden, solltest du dich mit Datentypen beschäftigen."
Damit hat er schon recht. Wie würden Sie einen String oder einen Char initialisieren? Etwa mit Hallo oder beim Char mit H? Lesen Sie sich bitte in die Dokumentation ein, dann wird das Leben einfacher für Sie und für alle anderen auch.
long geht doch bis 2^63