質問編集履歴

3

a

2021/05/22 08:43

投稿

t-cool
t-cool

スコア71

test CHANGED
File without changes
test CHANGED
@@ -6,27 +6,29 @@
6
6
 
7
7
  ```Dart
8
8
 
9
- List<Map<String, dynamic>> users = [
9
+ List<Map<String, dynamic>> users = [
10
10
 
11
- {'name': "Taro", 'count': 1},
11
+ {'name': "Taro", 'count': 1},
12
12
 
13
- {'name': "Hanako", 'count': 2},
13
+ {'name': "Taro", 'count': 2},
14
14
 
15
- {'name': "Taro", 'cout': 3},
15
+ {'name': "Hanako", 'count': 3},
16
16
 
17
- {'name': "Hanako", 'count': 4}
17
+ {'name': "Hanako", 'count': 4}
18
18
 
19
- ];
19
+ ];
20
+
21
+
22
+
23
+ print(
24
+
25
+ users.where((hash)=> hash["name"] == 'Taro').toList().reduce((curr,next)=>curr['count'] + next['count'])
26
+
27
+ );
20
28
 
21
29
 
22
30
 
23
-
24
-
25
- // このような実装になるかと推測しています
31
+ // Uncaught Error: TypeError: 3: type 'JSInt' is not a subtype of type 'Map<String, dynamic>'
26
-
27
- users.map(...)
28
-
29
- // => 4
30
32
 
31
33
  ```
32
34
 

2

fix

2021/05/22 08:43

投稿

t-cool
t-cool

スコア71

test CHANGED
File without changes
test CHANGED
@@ -6,21 +6,25 @@
6
6
 
7
7
  ```Dart
8
8
 
9
- var hashArray = [
9
+ List<Map<String, dynamic>> users = [
10
10
 
11
- {'name':'Taro', 'count': 1},
11
+ {'name': "Taro", 'count': 1},
12
12
 
13
- {'name':'Hanako', 'count': 2},
13
+ {'name': "Hanako", 'count': 2},
14
14
 
15
- {'name':'Taro', 'count': 3},
15
+ {'name': "Taro", 'cout': 3},
16
16
 
17
+ {'name': "Hanako", 'count': 4}
18
+
17
- ];
19
+ ];
20
+
21
+
18
22
 
19
23
 
20
24
 
21
25
  // このような実装になるかと推測しています
22
26
 
23
- hashArray.map(...)
27
+ users.map(...)
24
28
 
25
29
  // => 4
26
30
 

1

変更

2021/05/22 08:38

投稿

t-cool
t-cool

スコア71

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  Dart において、以下のようにハッシュを要素として含むリストから、
2
2
 
3
- キーが 'Taro' のものの値の合計を計算するにはどのように実装するでしょうか。
3
+ 'name' キーが 'Taro' のものの 'count'キーの値の合計を計算するにはどのように実装するでしょうか。
4
4
 
5
5
 
6
6
 
@@ -8,13 +8,11 @@
8
8
 
9
9
  var hashArray = [
10
10
 
11
- {'Taro': 1},
11
+ {'name':'Taro', 'count': 1},
12
12
 
13
- {'Hanako': 2},
13
+ {'name':'Hanako', 'count': 2},
14
14
 
15
- {'Taro': 1},
15
+ {'name':'Taro', 'count': 3},
16
-
17
- {'Hanako': 2}
18
16
 
19
17
  ];
20
18
 
@@ -22,9 +20,9 @@
22
20
 
23
21
  // このような実装になるかと推測しています
24
22
 
25
- hashArray.map(...).reduce(...);
23
+ hashArray.map(...)
26
24
 
27
- // => 2
25
+ // => 4
28
26
 
29
27
  ```
30
28