Was ist der Unterschied zwischen Int und Integer?
In Haskell was ist der Unterschied zwischen einem Int
und ein Integer
? Wo ist die Antwort dokumentiert?
InformationsquelleAutor 0xAX | 2010-08-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Quelle: Die Haskell-Wikibook. Auch finden Sie vielleicht die Zahlen Abschnitt Eine Sanfte Einführung in Haskell nützlich.
Integer
ist oft schneller als das istdas ist nur, weil
Int64
implementiert ist und eher schlecht auf 32-bit-Systeme. Auf 64-bit-Systemen, es ist toll.InformationsquelleAutor bcat
https://mail.haskell.org/pipermail/haskell-cafe/2005-May/009906.html
InformationsquelleAutor NullUserException
Int
istBounded
, was bedeutet, dass Sie verwenden könnenminBound
undmaxBound
zu finden, die Grenzen, die von der Implementierung abhängig, aber garantiert, um mindestens [-229 .. 229-1].Beispiel:
Jedoch
Integer
ist beliebiger Genauigkeit, und nichtBounded
.InformationsquelleAutor 200_success
Int C int", was bedeutet, dass seine Werte im Bereich von -2147483647 bis 2147483647,
während ein Integer-Bereich aus der ganzen Z gesetzt, das heißt, es kann beliebig groß sein.
Beachten Sie den Wert der Int-literal.
InformationsquelleAutor Ming-Tang
...
aus dem Haskell-report: http://www.haskell.org/onlinereport/basic.html#numbers
InformationsquelleAutor newacct
Einer
Integer
ist implementiert alsInt#
lange, bis er größer als der maximale Wert, den einInt#
speichern kann. An diesem Punkt, es ist ein GMP Anzahl.Nein, du hast Recht, das ist GHC bestimmten. Das heißt, 1. GHC ist es, was die meisten Menschen verwenden, 2. Dies ist die intelligente Art und Weise kann ich denken, um die Umsetzung einer solchen Daten-Typ.
InformationsquelleAutor Nate Symer