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

プログラミング道場

私がオススメするプログラミング教材です

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

目次1 これからエンジニアになりたい人へ向けた本2 プログラミング言語3 アプリ開発4 サーバー、インフラ、セキュリティなど5 機械学習系6 ゲーム開発7 データベース8 デザイン9 組織作り10 自作シリーズ11 その他12 おまけ これ ...

続きを見る

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

更新日:

記事の内容


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

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

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

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

ここがポイント!

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

配列の書き方

では、実際に配列の書き方を見ていきます。
配列を作成する方法には、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);

多次元配列とは?

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

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

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

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

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


setを利用して、配列の「積集合」や「差集合」を取り出します。

ListからSetに変換した後で、intersectionやdifferenceを使って、値を取り出しています。



応用編

配列の値を検索(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

Map(連想配列)については、この記事でまとめています

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

目次1 Map(連想配列)とは?2 Map(連想配列)の書き方と中身の確認3 Map(連想配列)の値を変更したり要素を追加する4 Map(連想配列)のkeyで削除する5 Map(連想配列)のマージ6 Mapのkeyでソート7 Mapのval ...

続きを見る

DartとFlutterをより詳しく勉強したい人には、この記事がオススメです

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

目次1 動画教材2 初心者向け3 中級者向け 動画教材 Flutter & Dart - The Complete Guide [2023 Edition] ▼ 興味がある方は、画像をクリック 英語版ですが、人気のコースです。 Fl ...

続きを見る


SwiftでiOSアプリを開発したい人には、この記事がオススメです

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

目次1 動画教材2 初心者向け3 中級者向け 動画教材 【iOS】SwiftUI 超入門 - Swift を基礎から学んで iOS (iPhone) アプリを開発しよう ▼ 興味がある方は、画像をクリック Swift , SwiftUI , ...

続きを見る


KotlinでAndroidアプリを開発したい人には、この記事がオススメです

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

目次1 動画教材2 初心者向け3 中級者向け 動画教材 はじめての Kotlin【Java 知らなくてOK!丁寧な解説で Android に必要な Kotlin の基本を学習】 ▼ 興味がある方は、画像をクリック 今学ぶべき言語、Kotli ...

続きを見る


Gitをより詳しく勉強したい人には、この記事がオススメです

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

目次1 動画教材2 漫画?でわかりやすく学ぶ入門書の定番3 初心者向け4 中級者向け5 上級者向け 動画教材 もう怖くないGit!チーム開発で必要なGitを完全マスター ▼ 興味がある方は、画像をクリック Gitの基本コマンド、ブランチやマ ...

続きを見る


ゼロからWebエンジニアになりたい人には、この記事がオススメです

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

ちまたには、「エンジニアになるための情報」で溢れかえっています。 ジョージさんが考える「Webエンジニアになる方法」を教えて下さい。 目次1 私が定義するWebエンジニア2 必ずやるべきこと3 推奨されること4 まとめ 私が定義するWebエ ...

続きを見る


独学で実務っぽい経験を積みたい人には、この記事がオススメです

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

エンジニアとして就職するためには実務経験が大事だと聞いていますが、就職しないことには実務経験を積むことができません。 どうやって、最初の実務経験を積んだらいいでしょうか? 目次1 スクールの理想と現実2 IT業界が抱える矛盾点3 擬似的に実 ...

続きを見る

-Dart, プログラミング

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