Why not login to Qiita and try out its useful features?

We'll deliver articles that match you.

You can read useful information later.

13
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Kotlin初心者のためのKotlinの型について

Posted at

はじめに

Kotlinを書くときに
「この型ってどう書くんだっけ?」
となっているKotlin初心者向けの記事になります!

今までJavaScript(動的型付け言語)を扱うことが多く
型を強く意識したことがありませんでした。
Android開発に携わり 「何だこの書き方は!?」 と静的型付けの書き方に戸惑うことが多く
自分が見返すため用の記事として書きました!

目次

プリミティブ型
リファレンス型
Nullable型
型推論
最後に

プリミティブ型

プリミティブ型 ・・・ 最初から用意されている基本的な変数の型

  • Double ・・・64bit浮動小数点数型
  • Float  ・・・32bit浮動小数点数型
  • Long  ・・・64bit整数型
  • Int   ・・・32bit整数型
  • Short  ・・・16bit整数型
  • Byte  ・・・8bit整数型
  • Boolean ・・・64bit真偽値

↑実務で使う代表的な型のみ紹介しています。



プリミティブ型は、以下のように宣言することができます。

val y: Double = 3.14

val a: Float = 3.14f

val b: Long = 1234567890123456789L

val c: Short = 123

val d: Byte = 12

val x: Int = 10

val z: Boolean = true

↑④のLong型の値の最後にL、という文字が記載されていますが、値がLongであることを表したい時に記述するルールになっています。Float型も同様です。


リファレンス型

リファレンス型 ・・・配列やクラスのようにnew演算子を用いてオブジェクトを生成してから使用するデータ型

  • String
  • Array
  • List
  • Map

リファレンス型の宣言方法↓

val str: String = "Hello, Kotlin!"

val array: Array<Int> = arrayOf(1, 2, 3)

val list: List<String> = listOf("apple", "banana", "orange")

val map: Map<String, Int> = mapOf("apple" to 100, "banana" to 200, "orange" to 300)

Nullable型

変数がnullを含む可能性があることを示します。

Nullable型の宣言方法↓

val x: Int? = null
val y: String? = "Hello, Kotlin!"

型推論

Kotlinは、初期値から型を類推する型推論という仕組みを持っています。
変数の型を明示的に宣言しなくても、コンパイラが自動的に型を推論してくれます。
ただし、初期値とデータ型の両方を省略することはできないので注意。

val x = 10 // xはInt型に推論される
val y = "Hello, Kotlin!" // yはString型に推論される

最後に

すぐに見返すせるよう、Kotlinの型の早見表です。

説明
Int 32bit整数型 val x: Int = 10
Double 64bit浮動小数点数型 val x: Double = 3.14
Float 32bit浮動小数点数型 val x: Float = 3.14f
Long 64bit整数型 val x: Long = 10000000000
Short 16bit整数型 val x: Short = 10
Byte 8bit整数型 val x: Byte = 0b1111111
Char 文字型 val x: Char = 'A'
Boolean 真偽値型 val x: Boolean = true
String 文字列型 val x: String = "Hello, Kotlin!"
Array 配列型 val x: Array = arrayOf(1, 2)
List 不変のリスト型 val x: List<String> = listOf("apple", "banana")
MutableList 可変のリスト型 val x: MutableList = mutableListOf("apple", "banana")
Set 不変のセット型 val x: Set<String> = setOf("apple", "banana")
MutableSet 可変のセット型 val x: MutableSet = mutableSetOf("apple", "banana")
Map 不変のマップ型 val x: Map<String, Int> = mapOf("apple" to 100, "banana" to 200)
MutableMap 可変のマップ型 val x: MutableMap = mutableMapOf("apple" to 100, "banana" to 200)
Any すべての型のスーパータイプ val x: Any = "Hello, Kotlin!"
Unit 戻り値がないことを示す特別な型 fun printHello(): Unit { println("Hello") }
Nullable型 nullを含む可能性がある型 val x: Int? = null


以上がKotlinの型についての基本的な説明となります。
Kotlinの型については、まだまだ細かい部分がありますが、
初心者の方にとって役に立つことを願っています。


ありがとうございました!!

13
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

Qiita Advent Calendar is held!

Qiita Advent Calendar is an article posting event where you post articles by filling a calendar 🎅

Some calendars come with gifts and some gifts are drawn from all calendars 👀

Please tie the article to your calendar and let's enjoy Christmas together!

13
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?