The documentation says "binary operations involving |BigInteger| and any other integral type result in |BigInteger".

|If I understand the table correctly it show that int and BigInteger result in BigInteger.

Am I missing something?

-Pascal

Am 09.10.2015 um 20:23 schrieb Winnebeck, Jason:

I’ve been struggling with types in math operations in Groovy. I think there is an error in the documentation?

http://groovy-lang.org/syntax.html#_math_operations

It says that int and BigDecimal result in double, but it doesn’t, it results in BigDecimal instead. It appears this holds for byte, char, short, and long as well.

assert (15.0 + 1).class == BigDecimal

Are there other errors in that table? It seems so… because byte + short is a byte and not an int as mentioned in that table:

assert ((byte)1 + (short)1).class == Byte

I would put in a PR to fix up that doc but I’m not sure I understand how it all works. Normally when I do maths I try to stick all to primitive types or all to BigDecimal types. Today I’m trying to make sure I don’t accidentally go from BigDecimals to float/double.

*Jason Winnebeck*

*Software Engineer III Contractor - IT Software Development | Windstream*

600 Willowbrook Office Park, Rochester, NY 14450

jason.winneb...@windstream.com <mailto:jason.winneb...@windstream.com> | windstreambusiness.com

o: 585.794-4585

------------------------------------------------------------------------
This email message and any attachments are for the sole use of the intended recipient(s). Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message and any attachments.

Reply via email to