- English
- 日本語
Kotlinを知っている人
Kotlinでは数値型、文字型、文字列型、真偽型など様々な変数の型が存在しています。
ここではKotlinの数値型を詳しく解説していきます。
\【期間限定】お得なキャンペーン実施中!/
Androidアプリコースならテックアカデミー!
Androidアプリコース
開発スキルを身につけてオリジナルアプリをGoogle Playに公開!
目次
数値型
Kotlinでは変数の型を基本型と呼んでおり、基本型は数値、文字、真偽、配列など様々です。
ここでは基本型の数値型について詳しく解説していきます。
基本型の数値型を詳しく解説していく前に、変数宣言をどのように行うのか復習もかねて見ていきましょう。
以下は定数・変数宣言の書式です。
定数宣言の書式
val 変数名 : 変数の型 = 値
変数宣言の書式
var 変数名 : 変数の型 = 値
上記のように変数の型は変数名の後に「:(コロン)」と変数の型を続けて記述することで変数宣言を行うことができます。
Kotlinでの変数宣言の書式を理解できたと思いますので、本題の数値型を解説していきたいと思います。
Kotlinの数値型はどれも符号付き(+ や -)です。
また、Kotlinの数値型は「整数」と「浮動小数点」の2種類に大きく分類することができます。
- 「整数」の変数の型はByte、Short、Int、Longの4種類
- 「浮動小数点」の変数の型はFloat、Doubleの2種類
数値型は6種類ありますが、それぞれ小数点を扱うかどうか、メモリに割り当てられるビット数の違いもあり、最大値や最小値も異なります。
それでは数値型の6種類の違いを詳しく見ていきましょう。
整数
整数とは4、100、3000、70000など小数点がない数値のことです。
下記の変数の型は整数で値を代入するためのもので、各変数の型で扱う整数の範囲が異なります。
ビット幅が大きいほど、扱える整数の範囲が大きくなります。
つまり、ビット幅が大きいほど、大きい値を代入することができます。
変数の型 | ビット幅 | 最大値 | 最小値 |
---|---|---|---|
Byte | 8ビット | 127 | -128 |
Short | 16ビット | 32767 | -32768 |
Int | 32ビット | 2147483647 | -2147483648 |
Long | 64ビット | 9223372036854775807 | -9223372036854775808 |
浮動小数点
浮動小数点とは1.1、2.45、3.589など小数点がある数値のことです。
下記の変数の型は浮動小数点で値を代入するためのもので、各変数の型で扱う浮動小数点の範囲が異なります。
ビット幅が大きいほど、扱える整数の範囲が大きくなります。
つまり、ビット幅が大きいほど、大きい値を代入することができます。
変数の型 | ビット幅 | 最大値 | 最小値 |
---|---|---|---|
Float | 32ビット | 3.4028235E38 | 1.4E-45 |
Double | 64ビット | 1.7976931348623157E308 | 4.9E-324 |
整数と浮動小数点の6種類はそれぞれビット幅が異なり、扱える整数と浮動小数点の範囲が異なることが分かりました。
ビット幅が大きいほど、使用するメモリが大きくなるので大は小を兼ねるという考えでビット幅が大きい変数の型を扱うことはやめたほうがいいでしょう。
数値型コード例
「1.数値型」では整数と浮動小数点の変数の型を6種類紹介しました。
それでは実際に6種類のコードを見ていきましょう。
①Byte型
val a: Byte = 200
②Short型
val b: Short = 20000
③Int型
val c: Int = 2000000000
④Long型
val d: Long = 2000000000000000000L
⑤Float型
val e: Float = 0.222f
⑥Double型
val f: Double = 0.222222222
a、b、c、d、e、fという変数名を使用していましたが、変数名に決まりはありません。
複数人でプログラムを組んでいる場合、みんなが分かりやすい変数名を使うといいでしょう。
④のLong型の値の最後にLという文字が記載されていますが、値がLongであることを表したい時に記述するルールになっています。
また⑤のFloat型の値の先後にfという文字が記載されていますが、値がFloatであることを表したい時に記述するルールになっています。
型推論
Kotlinは変数の型を推測できるため、変数の型を省略して記述することが可能です。
例えば、「2.数値型コード例」に出てきた変数の型を省略したものが以下の通りです。
①Byte型
val a = 200
②Short型
val b = 20000
③Int型
val c = 2000000000
④Long型
val d = 2000000000000000000L
⑤Float型
val e = 0.222f
⑥Double型
val f = 0.222222222
上記のように変数の型を省略したからといって、変数の型がなくなるわけではありません。
Kotlinではすべて変数の型が存在しています。
変数の型が省略されているものはKotlinの型推論機能が働き、Kotlinが適宜、変数の型を推測してくれています。
③と④と⑤と⑥は「2.数値型コード例」の変数の型でKotlinが推測しています。
このように推論機能があることで簡潔なコードを記述できるようになっています。
それではKotlinがどのように変数の型を推測したか見ていきましょう。
①はByte型、②はShort型で宣言していましたが、KotlinはInt型で推測しています。
なぜKotlinはByte型とShort型をInt型で推測したのでしょうか。
型の宣言がされていない場合、Kotlinでは小さな値でもすべてInt型で扱うというルールがあります。
そのため、扱う数値の範囲が始めから決まっている場合、しっかりと変数の型を宣言するといいでしょう。
変数の型を宣言することで使用するメモリの量を少なくすることができます。
Kotlinをもっと学習したい方へ
Kotlinを知っている人
最後まで読んで頂きまして、ありがとうございます。
Kotlinを学習し始めたばかりの方で、アプリケーションを作成したいけれど自力で考えながらプログラミングを組むのは難しい、Kotlinの文法を一通り学び終えたので次のステップに進みたいと考えている方はいますでしょうか。
上記のように考えている方にオススメの教材があります。
作ればわかる!Androidプログラミング Kotlin対応 10の実践サンプルで学ぶAndroidアプリ開発入門
この本はハイ&ローゲームや名刺代わりに使えるアプリ、加速度センサーを使った和室専用侵入者検知アプリ、MediaPlayerによる音声再生を活用した盗難防止アラーム、方位センサーを使ったゲーム、血圧を記録するアプリ、地図を活用したメモアプリなどを作成しながら、Kotlinを学べる1冊となっています。
自分でプログラムを組み、アプリが動いた時、達成感を感じられると思います。
初学者の方で次のステップに進むのにいい本となっていますので、是非この本で学んで頂ければと思います。
Kotlinを知っている人
Udemy
Kotlinを知っている人
\リーズナブルな価格で、実用的なスキルを自分のペースで学べる!/
セール時は最大90%以上OFFの超お得価格
TechAcademy
Kotlinを知っている人
\【期間限定】お得なキャンペーン実施中!/
Androidアプリコースならテックアカデミー!
Androidアプリコース
開発スキルを身につけてオリジナルアプリをGoogle Playに公開!
ポイント
Ruby on Railsを知っている人
最後まで読んで頂きまして、ありがとうございました。
ポイントは以下の通りです。
- 数値型の変数の型はByte、Short、Int、Long、Float、Doubleの6種類です
- Kotlinは型推論機能がついているので、変数の型を省略することが可能です
途中で分からないことがあり、中々進まないこともあると思います。
しかし、順を追って学習を進めていけば、必ずできるようになるのであきらめず最後までやりぬきましょう!