公開日:2020/02/03更新日:2020/08/03
【Kotlin基礎】Kotlinで配列を使う方法を解説

- Kotlinでの配列の使い方を知りたい。
- Javaとの違いを知りたい。
Kotlinでの配列の使い方がわからず困っている方はいらっしゃいませんか?
配列はプログラミングの基本ですが、プログラミングを始めたばかりの方にとっては、中々理解するのに苦労するのではないかと思います。
そこで本記事では、Kotlinでの配列の使い方を、サンプルコードを交え、わかりやすく解説致します。
Javaとの比較コードも載せておりますので、Java経験者の方にとっては、より理解しやすい記事になっているかと思います。
目次
Kotlinで配列を使う方法
配列を初期化する方法
まずは、配列を初期化する方法を解説致します。配列の初期化には、arrayOf()関数を使用します。
- Kotlin
fun arrayOf(vararg elements: T): Array
【公式ドキュメント】 : arrayOf – Kotlin Programming Language
以下は、文字列と数値の配列を初期化するサンプルコードです。
- Kotlin
- Java
val names = arrayOf("佐藤", "鈴木", "井上")
val ages = arrayOf(22, 30, 25)
println(names[0])
println(ages[1])
// 佐藤
// 30
String[] names = {"佐藤", "鈴木", "井上"};
int[] ages = {22, 30, 25};
System.out.println(names[0]);
System.out.println(ages[1]);
// 佐藤
// 30
arrayOf()関数の()内に、要素をカンマ(,)で区切って書いていきます。
また、Javaとは違い、Kotlinでは型推論が可能なので、型を省略することができます。
要素にアクセスするには、配列[index]と記述します。
- 配列の初期化には、arrayOf()関数を使用する
- arrayOf()関数の()内に、カンマで区切って要素を記述する
- Kotlinでは型推論が可能なので、型を省略することができる
- 配列の要素にアクセスするには、配列[index]と記述する
Nullで埋められた配列を作る方法
続いて、Nullで埋められた配列を作成する方法を解説致します。Nullで埋められた配列を作成するには、arrayOfNulls()関数を使用します。
- Kotlin
fun arrayOfNulls(size: Int): Array
【公式ドキュメント】 : arrayOfNulls – Kotlin Programming Language
以下は、5つのNullで埋められた配列を作成するサンプルコードです。
- Kotlin
- Java
val names = arrayOfNulls(5)
println(names[0])
// null
String[] names = new String[5];
System.out.println(names[0]);
// null
arrayOfNulls()関数の()内に、配列のサイズを記述します。
また、先ほどのarrayOf()関数とは違い、型を明記する必要があります。
- nullで埋められた配列を作成するには、arrayOfNulls()関数を使用する
- arrayOfNulls()関数の()内に、配列のサイズを記述する
- arrayOfNulls()関数は、型を省略することはできない
配列の要素数を調べる方法
続いて、配列の要素数を調べる方法を解説致します。配列の要素数を調べるには、sizeを使用します。
先ほどのサンプルコードで作成した配列のサイズを調べてみましょう。
- Kotlin
- Java
val names = arrayOfNulls(5)
println(names.size)
// 5
String[] names = new String[5];
System.out.println(names.lentgh);
// 5
配列の変数に対して、.sizeをつけることで要素数を調べることができます。
ちなみにJavaではlengthで要素数を調べることができます。
- 配列.sizeで要素数を調べることができる
配列の要素を比較する方法
続いて、配列の要素を比較する方法を解説致します。配列の要素を比較するには、contentEqualsを使用します。
【公式ドキュメント】 : contentEquals – Kotlin Programming Language
以下は、3つの配列を比較するサンプルコードです。
- Kotlin
- Java
val names1 = arrayOf("佐藤", "鈴木", "井上")
val names2 = arrayOf("佐藤", "鈴木", "井上")
val names3 = arrayOf("田中", "鈴木", "井上")
println(names1 contentEquals names2)
println(names1 contentEquals names3)
println(Arrays.equals(names1, names2))
println(Arrays.equals(names1, names3))
// true
// false
// true
// false
String[] names1 = {"佐藤", "鈴木", "井上"};
String[] names2 = {"佐藤", "鈴木", "井上"};
String[] names3 = {"田中", "鈴木", "井上"};
System.out.println(Arrays.equals(names1, names2));
System.out.println(Arrays.equals(names1, names3));
// true
// false
配列1 contentEquals 配列2とすることで、2つの配列を比較することができます。
また、Arrays.javaに定義されているArrays.equals()関数でも、配列を比較することができます。
- contentEqualsで、配列を比較することができる
- Arrays.equals()関数でも、配列を比較することができる
配列をループさせる方法
最後に、配列をループさせる方法を解説致します。
以下は、forとforEachで配列をループさせるサンプルコードです。
- Kotlin
- Java
val names = arrayOf("佐藤", "鈴木", "井上")
for (name in names) {
println(name)
}
names.forEach {
println(it)
}
// 佐藤
// 鈴木
// 井上
// 佐藤
// 鈴木
// 井上
String[] names = {"佐藤", "鈴木", "井上"};
for (String name : names) {
System.out.println(name);
}
// 佐藤
// 鈴木
// 井上
for及びforEachについての詳しい解説は、以下の記事にまとめておりますので、そちらもあわせてご覧ください。
まとめ
- 配列の初期化には、arrayOf()関数を使用する
- arrayOf()関数の()内に、カンマで区切って要素を記述する
- Kotlinでは型推論が可能なので、型を省略することができる
- 配列の要素にアクセスするには、配列[index]と記述する
- contentEqualsで、配列を比較することができる
- Arrays.equals()関数でも、配列を比較することができる
- 配列.sizeで要素数を調べることができる
- nullで埋められた配列を作成するには、arrayOfNulls()関数を使用する
- arrayOfNulls()関数の()内に、配列のサイズを記述する
- arrayOfNulls()関数は、型を省略することはできない
関連記事