Integer und Long

NetzUnity und Informatik-forum wurden zusammengelegt. Eine entsprechende Ankündigung wird demnächst noch folgen. Für 2025 ist hier einiges geplant! Bei Fragen bitte per DM an Maximilian Rupp wenden.
  • hallo,

    ich wollte wissen warum ich hier eine solche Fehlermeldung bekomme??
    ....integer number too large.....

    das ist mir ja klar, dass es ausserhalb Integer liegt aber ich hab doch einen L (long) da dran gehängt und das sollte doch eigentlich so sein..

    ...long number too large... :confused:

    PHP
    public class Zahl{
         public static void main(String[] args){
              System.out.println(88888888899999999999L);
        }
    }

    Danke :thumb:
    ciao :zwinker:

  • du hast meine Frage nicht verstanden glaube ich :shinner:

    .... ich weiss, dass es ausserhalb LONG ist aber warum bekommen ich trotzdem eine Meldung ...

    ....integer number too large.....:ahhh:

    und nicht so..

    ...long number too large... :ahhh:

    Danke :thumb:
    ciao :zwinker:

  • Long geht auch nur bis 2^64 halbe. Aber wenn du, wie das Beispiel zeigt, eh nichts damit herumrechnen willst, hab ich hier die Lösung für dich:

    PHP
    public class Zahl{
         public static void main(String[] args){
              System.out.println("88888888899999999999");
        }
    }

    :ausheck:

    In einen FBO rendern ist wie eine Schachtel Pralinen - man weiß nie, was man kriegt.

  • Zitat von freakjan

    hallo,
    ich wollte wissen warum ich hier eine solche Fehlermeldung bekomme??
    ....integer number too large.....

    Verwend java.math.BigInteger zum Rechnen mit arbitrary precision integers in Java.

  • ich danke euch allen aber das ist die Antwort auf meine Frage :ausheck:

    Zitat von Plantschkuh!

    "integer" ist weder das selbe wie "int" noch "Integer", no?
    "integer" heißt "ganzzahlig", du hast also eine zu große ganze Zahl angegeben. Zu groß für irgendeinen der ganzzahligen Datentypen, die Java so kennt.

    Danke :thumb:
    ciao :zwinker:

  • der Compiler gibt mir die Meldung:

    HTML
    Zahl.java:3: integer number too large: 88888888899999999999
    System.out.println(88888888899999999999L);
     
    1 error
     
    Compilierung beendet

    Danke :thumb:
    ciao :zwinker:

  • Aha.. irgendwie komisch wenns dann ohne explizite Anweisung zum Long mit "L" funktioniert, weil der Compiler ja sowieso die Zahl als Integer interpretiert.. zumindest in C. Da gibts einfach einen Überlauf.

    640K ought to be enough for anybody. :eek2:

  • warum bekomme ich hier eine Fehlermeldung??
    ..... hab doch extra l als long deklariert :confused:

    Danke :thumb:
    ciao :zwinker:

  • Was genau ist die Fehlermeldung?

    Zitat

    weil long nur bis etwas mehr 2 millarden + oder - geht.


    mdk: Du meinst wohl int..

    Int: −2.147.483.648 bis 2.147.483.647
    Long: −9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807

    640K ought to be enough for anybody. :eek2:

  • Achso klar. Der Compiler reserviert nur so viel Speicher beim Long wie für Int. Wenn du ihm sagst: long zahl = 6446131400L sollte es funktionieren, da der Compiler hier 64 Bit reserviert. Sag obs funktioniert hat.

    p.s: Du scheinst dich sehr mit Java zu beschäftigen.. wieso probierst du`s nicht auch mal mit C/C++?

    640K ought to be enough for anybody. :eek2:

  • Zitat von Swoncen


    mdk: Du meinst wohl int..

    Int: −2.147.483.648 bis 2.147.483.647
    Long: −9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807



    sorry, habe die alten werte verwendet, die in visual basic gelten (noch aus zeiten des 80286).

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!