Lua: Numbers
Lua |
---|
Basics |
Intermediate |
Advanced |
|
XLua |
Add to this template |
Lua supports one number datatype, which are generally C doubles. They perform the usual purpose of representing numerical data.
Numbers can be specified in the common decimal format (with a possible exponent and sign) or hexadecimal format. Numbers can always be coerced, or converted, into strings, but the reverse is not always true. String to number coercion can be attempted with tonumber()
Because doubles are used, and they are subject to precision loss, equality comparisons can cause problems; fortunately, doubles can also exactly represent integers and these issues will not occur as long as the number does not end up getting a fractional component (such as through division).
The math library is used to perform more complex operations on numbers, but basic arithmetic is part of the core language.
Unlike many other languages, 0 is considered to be true in a boolean context.