プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

私がおすすめするプログラミング教材のまとめ【書籍と動画】

プログラミング言語 スクリプト言語 コンパイル言語 アプリ開発 サーバー、インフラ、セキュリティなど 機械学習系 ゲーム開発 データベース 子供向け デザイン その他 おまけ まとめ この記事では、様々な書籍を紹介しました。 是非、自分に合 ...

続きを見る

【Dart入門】配列の基礎から応用までを説明します

更新日:

記事の内容


この記事では、Dart言語でよく使う配列の基礎的な使い方から応用までを説明します。
簡単なサンプルも書くので、これさえ読めば配列の使い方はバッチリです!

配列はどんな時に使うの?

配列とは複数のデータを扱うためのデータ型です。
そのため、実装中に、「同じようなことをしているかも?」と疑問に感じた時は、配列を使うことを検討してみましょう。
以下ような、「値を倍にするコード」を書く時を例にとって説明します。

配列を使ったコードの方が短いですし、新しい値を追加する時にも、配列に値を追加するだけで済みます。

ここがポイント!

  • 何度も同じ処理が出てきたら、配列を使うことを考えてみよう
  • 配列を使うと処理が短くなります
  • 配列を使うと、コードを変更しやすくなります

配列の書き方

では、実際に配列の書き方を見ていきます。
配列を作成する方法には、new Listと、[](角括弧)の2つがあります。

配列に値を格納することで、0から順番に0,1,2という添字(そえじ)が割り振られます。
添字とは、要素番号と考えて下さい。

Listを定義するさいには、String、int、doubleといった型を指定することもできます。
型を指定した場合は、その型以外の値を入れようとすると、エラーが出ます。

ここがポイント!

  • 配列は、new Listか、[](角括弧)で作成できる
  • 配列に値を格納することで、0から順番に0,1,2という添字が割り振られる

配列の中身の見方と範囲で切り出す(sublist)

配列に要素を追加、取り出し(add, removeLast, insert, removeAt, addAll)

配列に値をいっぺんに入れることもできます。
この例では、配列(List)に入れる型も指定しています。
型を指定しておくことで、他の値を誤って入れることを防ぐことができます。
このエラーは、Stringのリストに数字を入れた時に出たものです。

Error: The argument type 'int' can't be assigned to the parameter type 'String'.
names.add(1);

連想配列とは?

連想配列は、値を格納して自動的に添字の番号(0, 1, 2)が割り振られる配列とは異なります。
その代わりに、番号ではなくキーとなる名前をつけることができます。
番号の代わりにキーとなる名前をつけることにより、そのキーを指定して値を取り出すことができます。

連想配列の書き方と中身の確認

Mapか{}で作成することができます。

連想配列の値を変更したり要素を追加する

多次元配列とは?

多次元配列とは、配列の中に配列が入っている状態のことです。

多次元配列の書き方と中身の見方

Set(重複を許さない配列)とは?

Setとは、重複を許さない配列のようなものです。
ただし、Setに入った値の順序は保証されません。

Setは、Listから作成することもできます。





応用編

配列の値を検索(any, every)

配列を結合(from, expand)

Dart 2.3からは、リストの中にリストを展開するスプレッド記法も使えます。

配列の最大値と最小値を求める

配列の値を置換(replaceRange)

配列の値を並び替える(sort, reverse)

配列の値をフィルタリング(map, where, firstWhere, singleWhere)

関数型(whereなどの関数)の便利さを理解しよう

'100\t200\t300\t1\t2\t3';

この文字列を「\t」で分割して、100以上の数字だけを「,」だけで連結させてみます。

100,200,300

まとめ

この記事では、Dartの配列操作について説明しました。

Good luck for your engineer life!

【Dart入門】「collection if」と「collection for」の使い方

【Dart入門】forを使ったループ処理の説明

DartとFlutterをより詳しく勉強したい人は、この記事を読んで下さい

Dart
FlutterとDartの学習でおすすめの本と動画【2020年最新】

初心者向け Flutter モバイルアプリ開発バイブル Flutter開発の入門書です。 これから、アプリ開発を始めたい人にオススメの一冊です。 The Complete 2020 Flutter Development Bootcamp ...

続きを見る


SwiftでiOSアプリを開発したい人は、この記事を読んで下さい

Swiftの学習でおすすめの本と動画【2020年最新】

初心者向け 【6日で速習】iOS 13アプリ開発入門決定版 20個のアプリを作って学ぼう ▼今すぐ詳細を見てみる 地図検索、カメラ投稿、タイマー、日出時刻検索、ARアプリ、AIアプリなど実用アプリを20個以上作って学ぶことができます。 作り ...

続きを見る


KotlinでAndroidアプリを開発したい人は、この記事を読んで下さい

Kotlinの勉強でおすすめの本と動画【2020年最新】

初心者向け やさしいKotlin入門 プログラミング経験がない人にもオススメできる一冊です。 これ一冊で、アプリを作れるようにはなりませんが、Kotlinの楽しさを知るにはいい本だと思います^^ 速習 Kotlin: Javaより簡単!新A ...

続きを見る


Javaをより詳しく勉強したい人は、この記事を読んで下さい

Javaの学習でおすすめの本と動画【2020年最新】

初心者向け スッキリわかるJava入門 第3版 発売から8年であっという間に総計40万部到達した大人気シリーズの原点です。 Javaの入門書の定番で、わかりやすいことで評判です。 個人的には、「初心者を飽きさせない工夫」が素晴らしいと思いま ...

続きを見る


Gitをより詳しく勉強したい人は、この記事を読んで下さい

Gitの学習でおすすめの本と動画【2020年最新】

漫画?でわかりやすく学ぶ入門書の定番 わかばちゃんと学ぶGit使い方入門 Gitの入門書の定番と言っても差し支えありません。 絵や図で解説している本なので、わかりやすく頭に入ってきます。 初心者向け Gitが、おもしろいほどわかる基本の使い ...

続きを見る


ゼロからWebエンジニアになりたい人は、この記事を読んで下さい

ゼロからWebエンジニアとして就職する方法【何もない自分に積み上げていく】

ちまたには、「エンジニアになるための情報」で溢れかえっています。 ジョージさんが考える「Webエンジニアになる方法」を教えて下さい。 私が定義するWebエンジニア まず、最初に以下の図を見て下さい。 これが、Web業界で働く人達の大分類です ...

続きを見る


独学で実務っぽい経験を積みたい人は、この記事を読んで下さい

エンジニアが独学で実務経験っぽいことを学ぶ方法

エンジニアとして就職するためには実務経験が大事だと聞いていますが、就職しないことには実務経験を積むことができません。 どうやって、最初の実務経験を積んだらいいでしょうか? スクールの理想と現実 これからプログラミングを学ぼうとしている人が描 ...

続きを見る

関連コンテンツ

-Dart, プログラミング

Copyright© プログラミング道場 , 2020 All Rights Reserved Powered by AFFINGER4.