Ist Java BigDecimal die nächsten Daten Typ entsprechenden C#'s Dezimal?
Entsprechend der Tabelle hier, die entsprechenden Daten-Typ in Java zu C#'s Decimal
ist BigDecimal
.
Ist das wirklich so? Was ist mit den "Großen" Präambel? Es scheint nicht zu einem "SmallDecimal" oder "LittleDecimal" (geschweige denn "MediumSizedDecimal") in Java.
Muss ich allerdings sagen, dass chart-war das deutlichste, was ich gefunden zum Thema; die andere links hier und hier und hier waren in etwa so klar für mich, wie der Mississippi River nach einem sintflutartigen Unwetter.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Yep - das ist in den entsprechenden Typ.
Da Sie über Java nach C# - seien Sie nicht zu überrascht, um zu finden, die kleinen Nuancen, wie diese - oder auch Sauer, wenn es keine einfache Möglichkeit, etwas zu tun, das ist "einfach" zu tun C#. Das erste, was mir in den Sinn kommt ist int & int? - in Java nur int und Integer.
C# hatte den Luxus kommt nach Java, so viel (was ich subjektiv zu sehen als) schlechte Entscheidungen wurden fixiert/gestrafft werden. Auch hilft es, dass C# wurde von Andres Hejlsberg (wer ist wohl eine der besten Programmiersprache Designer alive) und ist regelmäßig "aktualisiert" werden im Gegensatz zu Java (die Sie wahrscheinlich erlebt all die Dinge Hinzugefügt, um C#, die seit dem Jahr 2000 komplette Liste)
Sind Sie ähnlich, aber nicht identisch. Um genauer zu sein: der Java-version darstellen kann jedem Wert, den die C# - version kann, aber das Gegenteil ist nicht wahr.
Java
BigDecimal
können willkürlich viel Präzision und können deshalb beliebig große. Wenn Sie möchten, um eineBigDecimal
mit tausend Orte Präzision, die Sie gehen Sie nach rechts weiter.Dagegen eine C#
decimal
hat eine Feste Größe; es dauert bis 128 bit und gibt Sie 28 Dezimalstellen Präzision.Um genauer zu sein: beide Arten geben Sie die Nummern der form
In C#
someInteger
ist eine 96-bit-Ganzzahl ohne Vorzeichen undsomeExponent
ist eine ganze Zahl zwischen 0 und 28.In Java
someInteger
ist von beliebiger Größe undsomeExponent
ist eine signierte 32-bit-integer.BigDouble
wird entweder führen Sie Mathematik-genau das, oder werfen eine Ausnahme, wenn Sie es nicht kann. DagegenDecimal
im hintergrund Runden Dezimalstellen, die es nicht in den Griff. Zum Beispiel, bei der Division 1 in 536870912, JavaBigDecimal
berechnen Sie den Wert als 0.00000000186264514923095703125 während .NETDecimal
berechnen es als 0.0000000018626451492309570312 D.BigDecimal
?BigDecimal
.