質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Flutter

Flutterは、iOSとAndroidのアプリを同じコードで開発するためのフレームワークです。オープンソースで開発言語はDart。双方のプラットフォームにおける高度な実行パフォーマンスと開発効率を提供することを目的としています。

Dart

Dartは、Googleによって開発されたJavaScriptの代替となることを目的に作られた、ウェブ向けのプログラミング言語である。

Q&A

解決済

1回答

540閲覧

Flutter Listの検索がうまくいかない

Tiseto

総合スコア1

Flutter

Flutterは、iOSとAndroidのアプリを同じコードで開発するためのフレームワークです。オープンソースで開発言語はDart。双方のプラットフォームにおける高度な実行パフォーマンスと開発効率を提供することを目的としています。

Dart

Dartは、Googleによって開発されたJavaScriptの代替となることを目的に作られた、ウェブ向けのプログラミング言語である。

0グッド

0クリップ

投稿2023/04/11 17:46

実現したいこと

  • Flutterで要素がMap型のListの検索を行う

前提

Flutterで下のソースコードの「サンプル」のような、要素がMap型のListを条件を設定して検索を行い、ListView.builder表示させようとしていますが、エラーは出ないものの、下の方法で検索をかけたところ、条件に該当する要素も表示されなくなってしまいました。

該当のソースコード

static const data = [ //サンプル { "username": "A", "place": "東京" }, { "username": "B", "place": "神奈川" }, { "username": "C", "place": "埼玉" } ]; List<User> users = data.map<User>(User.fromJson).toList(); //正常に動く List<User> usersEdited = data .where((place) => place == "東京")//"place"が"東京"の要素のみ取り出したい .map<User>(User.fromJson) .toList(); //該当箇所、ListView.builderを回すと"place"が"東京"の要素も表示されない
import 'dart:convert'; class User { final String username; final String place; const User( {required this.username, required this.place}); static User fromJson(json) => User( username: json['username'], place: json['place']); }

試したこと

ソースコードのように、whereを使ってListの検索を行おうとしても(usersEdited)、ListView.builderを回したときに表示されません。usersでListView.builderを回すと三つとも表示されます。

Flutter初心者でかつ初めての質問で拙いところもあると思われますが、よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

where部分が違います。

dart

1 .where((place) => place["place"] == "東京") //"place"が"東京"の要素のみ取り出したい

渡されるplaceはMap<String, String>型です。
そこから地名が格納されている「"place"」を指定する必要があります。

投稿2023/04/11 22:11

ta.fu

総合スコア1676

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Tiseto

2023/04/12 13:01

返信遅くなって申し訳ありません。 無事検索をかけたものだけ表示することができました。 Map<String, String>型の扱いについてずっと困っていたのでとても助かりました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問