Android

Kotlinをはじめよう〜コレクションなど〜

投稿日:2017年6月26日 更新日:

はじめに

前回のKotlin基本文法編に続きまして、今回は前回お話した基本データ型をまとまりとして取り扱う方法を記載したいと思います。

Kotlinでは、配列やレンジ、そしてコレクション(リスト、セット、マップ)があり、多用することになりますので、一つずつ解説していきます。

配列

Kotlinの配列は、Arrayクラスにより表現されています。後ほど、紹介する配列は宣言時に要素数などを決めておく必要があります。

先ずは、配列の宣言方法について

次に要素の取得、代入について

 

レンジ

Kotlinにも他の言語と同様に「1..5」のように表現できるレンジというものがあります。こちらは実際のコードを見てもらえれば、概要はつかめると思います。

 

コレクション(リスト)

コレクションを使うことは他の言語であっても非常に多用するのではないでしょうか。KotlinはJavaとは異なり、イミュータブル(変更不可能)なものとミュータブル(変更可能)なものを明確に区別しています。ミュータブルなコレクションは要素を変更したり、追加・削除が可能です。

先ずは、イミュータブルなリストの例です。0番目の要素の変更や要素の追加でエラーが発生しているのがわかると思います。

今度は、ミュータブルなリストです。要素の変更、追加、削除などの操作が可能であることがわかると思います。

なお、イミュータブルなリストをイミュータブルなリストには下記のメソッドで変更可能です。

 

コレクション(セット)

セットもリスト同じように扱えますが、集合を表すコレクションで下記のような特徴があります。

  • リストとは異なり、集合のため要素に重複がなくなります。
  • リストとは異なり、順序が保証されていません

それでは、早速例を見てみましょう。使い方としてはリストと大差ありませんね。

 

コレクション(マップ)

コレクションの最後としてマップを紹介します。マップは、キーと値の組みを保持するコレクションです。Pairオブジェクト「”key” to “value”」を保持するのですが、この書き方が他の言語と比べると少しクセがありますが、慣れれば問題ないでしょう。

 

コレクションまとめ

まとめとして、コレクションの簡単な表を記載しておきます。

インタフェース説明初期化メソッドミュータブル化
List変更不可の順序付きリストlistOftoMutableList()
MutableList変更可の順序付きリストmutableListOf
 Set変更不可の集合setOf toMutableSet()
 MutableSet変更可の集合 mutableSetOf –
 Map変更不可のキーと値のコレクション mapOf toMutableMap()
 MutableMap 変更可のキーと値のコレクション mutableMapOf –

さいごに

いかがでしたでしょうか。コレクションは非常に多用するので、しっかりと把握しておきましょう。特にJavaからの移行の場合は、イミュータブルとミュータブルが区別されていることは注意ですね。

次回は、コレクションを操作する便利なメソッド群(map、filter、reduceなど)を紹介したいと思います。

おすすめ書籍

Kotlinイン・アクション  Kotlinスタートブック -新しいAndroidプログラミング  Kotlin Webアプリケーション 新しいサーバサイドプログラミング

page_footer_300rect




page_footer_300rect




-Android
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

Kotlinのスコープ関数を調べて見た

1 はじめに2 スコープ関数とは3 スコープ関数の種類について4 with関数4.1 使い方4.1.1 withを使わない場合4.1.2 withを使う場合4.2 所感5 apply関数5.1 使い方 ...

Android 10の概要をまとめました。

1 はじめに2 主な変更点2.1 バックグラウンドからの起動について2.2 ストレージへの権限2.3 位置情報制御2.4 Live caption2.5 Smart Reply2.6 Gesture ...

SafetyNet Attestation APIでRoot化チェック【基本的な検証編】

1 はじめに2 SafetyNet Attestation APIとは2.1 注意点2.1.1 レスポンス結果はアプリ内で判定しない2.1.2 JWSのキーチェーンをチェックする2.1.3 レスポンス ...

【Android】Firebase Cloud Storageに画像をアップロードする

1 はじめに1.1 Firebaseとは2 Firebase Cloud Storage を使う為の準備3 パーミッションの追加4 実装してみましょう4.1 今回作成するソースコード全容4.2 送信先 ...

Kotlin MPAndroidChartライブラリを使いボリンジャーバンドを描画してみる。

1 はじめに2 ボリンジャーバンドとは2.1 ライブラリの導入2.2 描画の準備3 ボリンジャーバンドを描画する3.1 CombinedChartの設定3.2 CombinedChart用のデータ作成 ...

フォロー

follow us in feedly

page_side_300rect

2017年6月
« 5月 7月 »
 123
45678910
11121314151617
18192021222324
252627282930 

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。