カテゴリ: Kotlin 更新日: 2025/12/03

Kotlinの変数と定数の基本!valとvarの使い分けとデータ型の基本

Kotlinの変数と定数の基本!valとvarの使い分けとデータ型の基本
Kotlinの変数と定数の基本!valとvarの使い分けとデータ型の基本

先生と生徒の会話形式で理解しよう

生徒

「Kotlinで変数や定数を使いたいのですが、valvarの違いがよくわかりません。」

先生

「良い質問ですね。valvarは、Kotlinで変数を宣言する際に使うキーワードです。valは再代入できない定数、varは再代入可能な変数を表します。」

生徒

「なるほど。具体的な使い方やデータ型についても教えてください。」

先生

「それでは、Kotlinの変数と定数の基本的な使い方やデータ型について詳しく見ていきましょう!」

1. Kotlinの変数と定数の基本

1. Kotlinの変数と定数の基本
1. Kotlinの変数と定数の基本

Kotlinでは、変数や定数を宣言する際にvalvarのキーワードを使用します。

  • val:再代入できない定数(immutable)を宣言します。
  • var:再代入可能な変数(mutable)を宣言します。

例えば、以下のように宣言します。


val pi: Double = 3.14159
var count: Int = 0

piは定数として宣言されているため、後から値を変更することはできません。一方、countは変数として宣言されているため、後から値を変更することができます。

2. valとvarの使い分け

2. valとvarの使い分け
2. valとvarの使い分け

valvarの使い分けは、値を変更する必要があるかどうかで判断します。

  • val:値を変更する必要がない場合に使用します。再代入ができないため、安全性が高まります。
  • var:値を変更する必要がある場合に使用します。再代入が可能なため、柔軟性があります。

例えば、以下のように使用します。


val name: String = "Kotlin"
var age: Int = 5
age = 6 // 再代入可能

nameは定数として宣言されているため、後から値を変更することはできません。一方、ageは変数として宣言されているため、後から値を変更することができます。

3. Kotlinの主なデータ型

3. Kotlinの主なデータ型
3. Kotlinの主なデータ型

Kotlinには、さまざまなデータ型があります。主なデータ型は以下の通りです。

  • Int:32ビットの整数型
  • Long:64ビットの整数型
  • Float:32ビットの浮動小数点数型
  • Double:64ビットの浮動小数点数型
  • Boolean:真偽値型(trueまたはfalse
  • Char:文字型(1文字)
  • String:文字列型

例えば、以下のように使用します。


val isActive: Boolean = true
val grade: Char = 'A'
val message: String = "Hello, Kotlin!"

Kotlinを基礎からしっかり学びたい人や、 Java経験を活かしてモダンな言語にステップアップしたい人には、 定番の入門書がこちらです。

基礎からわかるKotlinをAmazonで見る

※ Amazon広告リンク

4. 型推論と明示的な型指定

4. 型推論と明示的な型指定
4. 型推論と明示的な型指定

Kotlinでは、変数や定数を宣言する際に、初期値から自動的にデータ型を推測する「型推論」が可能です。

例えば、以下のように宣言できます。


val number = 10 // Int型と推論される
val text = "Kotlin" // String型と推論される

ただし、初期値がない場合や、明示的に型を指定したい場合は、以下のように型を指定します。


val number: Int
number = 10

5. const valによる定数の宣言

5. const valによる定数の宣言
5. const valによる定数の宣言

Kotlinでは、コンパイル時に値が確定している定数を宣言する場合、const valを使用します。

const valは、クラスや関数の外側(トップレベル)またはobject内でのみ使用できます。


const val MAX_USERS: Int = 100

const valで宣言された定数は、ビルド時に値が確定し、変更することはできません。

6. nullとnull許容型

6. nullとnull許容型
6. nullとnull許容型

Kotlinでは、変数や定数にnull(値が存在しないこと)を代入することは原則できません。

ただし、型名の後ろに?を付けることで、nullを許容する「null許容型」として宣言できます。


var name: String? = null

このように宣言することで、namenullを代入することが可能になります。

まとめ

まとめ
まとめ

ここまで、Kotlinの変数と定数の基本として、valvarの違いや、型推論、データ型の特徴、そしてconst valを使った定数の宣言方法まで幅広く学んできました。あらためて振り返ってみると、Kotlinがなぜ多くの開発現場で利用されているのか、その理由がよくわかります。特に、再代入できないvalを標準的に使うという文化は、プログラムの安全性を高めるうえで非常に重要です。値が変わらないという保証だけで、コードの読みやすさも理解しやすさも大きく向上するため、初心者でも安心して扱うことができます。

また、Kotlinの大きな魅力として、型推論の存在があります。型推論を使えば、煩雑な型指定を省略できるため、コード全体が見やすく整理され、ミスが起きにくくなります。開発速度を大きく高めるだけでなく、読み書きの負担が減るので学習もしやすく、特に初学者には嬉しい機能です。さらに、明示的な型指定も可能で、特定の型を固定したい時には非常に役立ちます。状況によって使い分けることで、より安全で効率的なプログラムを書くことができるようになります。

データ型の種類も数多くありますが、整数、小数、文字列、真偽値など、日常的に利用するものがひととおり揃っています。特にString型やBoolean型はさまざまな処理に登場するため、しっかり理解しておくことで、より複雑なアプリケーションを作る際にも役立ちます。さらに、Kotlin特有のnull安全性は、アプリ開発におけるバグの大きな原因である「null参照エラー」を避けるための強力な仕組みとして重要です。String?のように?を付けて宣言することで、nullを扱う必要がある場面でも柔軟に対応できます。

そして、コンパイル時に値が確定するconst valは、アプリの設定値や固定値を扱う際に非常に便利です。トップレベルやobject内で宣言し、変更がない値を扱うことで、プログラム全体の統一性や可読性が高まります。開発の規模が大きくなればなるほど、定数管理の重要性は増していくため、早い段階で慣れておくと大きなメリットがあります。

以下は、今回学んだ内容をまとめたサンプルプログラムです。valvarの違い、データ型の指定、null許容型などがひと目でわかるようになっていますので、ぜひ確認して理解を深めてみてください。

サンプルプログラム


// 定数と変数の基本
val siteName: String = "Kotlin学習サイト"
var visitorCount: Int = 10
visitorCount = 11

// 型推論の例
val title = "学習まとめ"
val score = 95

// null許容型
var memo: String? = null

// const val の利用例(トップレベル)
const val MAX_POINT = 100
先生と生徒の振り返り会話

生徒

「今日のまとめを読んで、Kotlinの変数や定数がかなり理解できた気がします。特にvalvarの使い分けは、実際にコードを書くとすぐに役立ちそうですね。」

先生

「その通りです。値が変わらないものはval、変わるものはvarという考え方を習慣にすると、コードがとても読みやすく、安全になりますよ。」

生徒

「型推論も便利ですね。全部に型を書かなくてもいいのは助かります。でも、必要な時には明示的に型を書けるというのも安心です。」

先生

「型推論と明示的な型指定を適切に使い分けることは、Kotlinを書く上で大切なポイントです。そして、null安全性の仕組みはKotlinの大きな特徴でもあります。String?のように宣言するだけで、nullが扱えるようになるので覚えておきましょう。」

生徒

「はい!これでKotlinの基礎がしっかり固まった気がします。次はもっと複雑な処理にも挑戦してみます。」

先生

「素晴らしい意気込みですね。今回の内容はアプリ開発の基礎になる部分なので、ぜひ復習しながらステップアップしていきましょう。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Kotlinでvalとvarの違いは何ですか?

Kotlinでは、valは再代入できない定数を、varは再代入可能な変数を宣言するために使います。プログラムの中で一度だけ値を設定して変更しない場合はvalを、途中で値を変更する必要がある場合はvarを使います。
関連記事:
カテゴリの一覧へ
新着記事
New1
Go言語
Go言語の短絡評価(ショートサーキット)を使った条件式の工夫をやさしく解説!初心者でも理解できる基本知識
New2
Go言語
Go言語の構造体の初期化パターンとコンストラクタ的関数の書き方を徹底解説!初心者でもわかる基本と実用例
New3
Kotlin
Kotlinの例外処理とキャンセルの連携を完全ガイド!初心者でもわかるCoroutineExceptionHandlerの使い方
New4
Go言語
Go言語のクロージャとは?関数内関数の活用例と仕組み
人気記事
No.1
Java&Spring記事人気No1
Kotlin
KotlinのChannelでデータをやり取りする方法を完全ガイド!初心者にもわかる非同期通信の基本
No.2
Java&Spring記事人気No2
Go言語
Go言語でのDB接続情報を環境変数で管理する方法|初心者でも安全に設定
No.3
Java&Spring記事人気No3
Kotlin
Kotlinのビルド設定エラーと解決法まとめ!初心者向けGradleトラブル対処ガイド
No.4
Java&Spring記事人気No4
Kotlin
Android Studioのインストール手順と初期設定を初心者向けに完全解説!
No.5
Java&Spring記事人気No5
Kotlin
Gradleファイル(build.gradle.kts)の書き方と役割をやさしく解説!Kotlin初心者向け完全ガイド
No.6
Java&Spring記事人気No6
Kotlin
Kotlinでテキスト表示・編集!初心者でもわかるTextViewとEditTextの使い方
No.7
Java&Spring記事人気No7
Kotlin
Kotlin DSLとGroovy DSLの違いをやさしく解説!初心者でもわかるGradleスクリプトの使い分け
No.8
Java&Spring記事人気No8
Swift
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方

💻 作業効率アップに

ノートPCを縦置きしてデスクを広く。
省スペースで片づく定番スタンド

UGREEN 縦型スタンドをAmazonで見る

※ Amazon広告リンク