※本サイトで紹介している商品・サービス等の外部リンクには、アフィリエイト広告が含まれる場合があります。

6-1. 数値型とリテラル

2023年7月22日

概要

任意の数値データを扱うデータ型です。
整数型と浮動小数点型に分けられます。

リテラル

整数リテラル

整数リテラルでは、10 進数のほか 16 進数と 2 進数も扱えます。
16 進数表現は、先頭を 「0x」として、続けて 16 進数で表記します。
2 進数表現は、先頭を「0b」として、2 進数で表記します。
Kotlin では、8 進数のリテラルはサポートされていません。

10
10000000
0x0A
0b1001

また、Long 型を明記する場合には 末尾に「L」をつけます。

2000000000000000000L

10000000 のように桁数が多い数値の場合に見やすくするため、「_」(アンダースコア) の記号を途中に入れて表記することも可能です。

10000000
10_000_000

浮動小数点数リテラル

浮動小数点数リテラルでは、小数点表記や指数表記が利用できます。
一般的な少数と同様に、整数部、小数点、小数部の順に記述します。さらに指数を利用する場合は、「e」または「E」、プラス記号「+」もしくはマイナス記号「-」を整数指数という記述形式で小数部のあとに記述します。

3.14
.1
1.1e3
1.1e+3
1.234e-5

また、float 型であることを明記する場合は、末尾に「f] をつけます。

0.222f

数値型

整数型

ビット数データの範囲リテラルの例
Byte8 ビット-128 ~ 127123
0x0F
0b1001
Short16 ビット-32768 ~ 327671234
0x0F
0b1001
Int32 ビット-2,147,483,648 ~ 2,147,483,6471234567890
0x0F
0b1001
Long64 ビット-9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,8071234
1234L

符号なし整数型 (Kotlin 1.5 以降)

符号なしの整数型も 1.5 以降でサポートされています。

データ型ビット数データの範囲
UByte8 ビット0 ~ 255
UShort16 ビット0 ~ 65535
UInt32 ビット0 ~ 4294967295
ULong64 ビット0 ~ 18446744073709551615

浮動小数点型

データ型ビット数データの範囲
Float32 ビット1.40129846432481707e-45 ~ 3.40282346638528860e+38
Double64 ビット4.94065645841246544e-324 ~ 1.79769313486231570e+308

以下は、変数の宣言とともにリテラルでの代入の例です。

fun main() {
   val b: Byte = 1
   val s: Short = 10
   val i: Int = 10000
   val l: Long = 1_000_000_004
   val d: Double = 1.41421356237
   val f: Float = 3.1415f

   println("Byte Value is " + b)
   println("Short Value is " + s)
   println("Int Value is " + i)
   println("Long Value is " + l )
   println("Double Value is " + d)
   println("Float Value is " + f)
}

実行結果

Byte Value is 1
Short Value is 10
Int Value is 10000
Long Value is 1000000004
Double Value is 1.41421356237
Float Value is 3.1415

Kotlin Playground で実行