官术网_书友最值得收藏!

Integers

Julia offers support for integer numbers ranging from types Int8 to Int128, with 8 to 128 representing the number of bits used, and with unsigned variants with a U prefix, such as UInt8. The default type (which can also be used as Int) is Int32 or Int64, depending on the target machine architecture. The bit width is given by the Sys.WORD_SIZE variable. The number of bits used by the integer affects the maximum and minimum value this integer can have. The minimum and maximum values are given by the typemin() and typemax() functions, respectively; for example, typemax(Int16) returns 32767.

If you try to store a number larger than that allowed by typemax, overflow occurs. For example, note the following:

julia> typemax(Int) 
9223372036854775807 # might be different on 32 bit platform 
julia> ans + 1 
-9223372036854775808 

Overflow checking is not automatic, so an explicit check (for example, the result has the wrong sign) is needed when this can occur. Integers can also be written in binary (0b), octal (0o), and hexadecimal (0x) format.

For computations needing arbitrary-precision integers, Julia has a BigInt type. These values can be constructed as BigInt(number) or big(number), and support the same operators as normal integers. Conversions between numeric types are automatic, but not between the primitive types and the big types. The normal operations of addition (+), subtraction (-), and multiplication (*) apply for integers. A division (/) always gives a floating point number. If you only want integer divisor and remainder, use div and rem. The symbol ^ is used to obtain the power of a number.

The logical values, true and false, of type Bool are also integers with 8 bits. 0 amounts to false, and 1 to true. Negation can be done with the ! operator; for example, !true is false. Comparing numbers with == (equal), != or < and > returns a Bool value, and comparisons can be chained after one another (as in 0 < x < 3).

主站蜘蛛池模板: 铁岭市| 宁晋县| 洪泽县| 柞水县| 垦利县| 大同县| 太白县| 石门县| 博兴县| 沙田区| 会东县| 贡觉县| 海宁市| 巴青县| 淮北市| 平山县| 崇明县| 乌兰浩特市| 延庆县| 贵州省| 富民县| 慈溪市| 阳谷县| 新密市| 陆良县| 西林县| 洪洞县| 长海县| 平阴县| 类乌齐县| 屯昌县| 深圳市| 天等县| 汶上县| 胶州市| 东平县| 宜兰县| 桂平市| 固阳县| 雷山县| 汝阳县|