- Learn Kotlin Programming(Second Edition)
- Stephen Samuel Stefan Bocutiu
- 301字
- 2021-06-24 14:13:25
Numbers
The built-in number types are as follows:

To create a number literal, use one of the following forms:
val int = 123 val long = 123456L val double = 12.34 val float = 12.34F val hexadecimal = 0xAB val binary = 0b01010101
You will notice that a long value requires the L suffix and a float value requires a F suffix. The double value, is used as the default for floating-point numbers, and int for integral numbers. The hexadecimal and binary values use the 0x and 0b prefixes, respectively.
Kotlin does not support the automatic widening of numbers, so conversion must be invoked explicitly. Each number has a function that will convert the value to one of the other number types. For example, to convert from an integer to a long value, we can do the following:
val int = 123 val long = int.toLong()
Similarly, to convert a float value to a double value, we use the toDouble function:
val float = 12.34F val double = float.toDouble()
The full set of functions for conversions between types is toByte(), toShort(), toInt(), toLong(), toFloat(), toDouble(), and toChar().
The usual bitwise operators—left-shift, right-shift, unsigned right-shift, logical and, logical or, and exclusive logical or—are supported by Kotlin. Unlike Java, these are not built-in operators but named functions; however, they can still be invoked like operators:
val leftShift = 1 shl 2 val rightShift = 1 shr 2 val unsignedRightShift = 1 ushr 2 val and = 1 and 0x00001111 val or = 1 or 0x00001111
val xor = 1 xor 0x00001111 val inv = 1.inv()
Notice that inverse is not a binary operator, but a unary operator, and so is invoked using the dot syntax on a number.
- Advanced Quantitative Finance with C++
- Microsoft Dynamics 365 Extensions Cookbook
- MongoDB for Java Developers
- 人臉識別原理及算法:動態人臉識別系統研究
- PLC編程與調試技術(松下系列)
- 51單片機C語言開發教程
- Python圖形化編程(微課版)
- Scala Data Analysis Cookbook
- 編寫高質量代碼:改善Objective-C程序的61個建議
- 創意UI Photoshop玩轉移動UI設計
- C Primer Plus(第6版)中文版【最新修訂版】
- SQL Server 2008實用教程(第3版)
- Raspberry Pi Robotic Projects
- 編譯原理學習與實踐指導
- Learning SaltStack(Second Edition)