回答編集履歴

1

追記

2024/07/27 04:49

投稿

hqf00342
hqf00342

スコア396

answer CHANGED
@@ -1,19 +1,12 @@
1
- 求めている答えかわかりませんが2つ書きます。
1
+ 求めている答えかわかりませんが
2
+ Ixライブラリを使って、11行目を書き換えます。
2
3
 
3
- ## Ixを使う。(IBuffer<T>化)
4
-
5
- Ixライブラリを使い、11行目を書き換えます。
6
-
7
4
  ```csharp
8
5
  //var mapped = xs.Select(Map);
9
6
  var mapped = xs.Select(Map).Memoize();
10
7
  ```
11
8
 
12
- ## 必要な分だけToArray()・ToList()(配列、IList化)
9
+ この例では`var mapped = xs.Select(Map).Take(10).ToArray();` で済ませことが多いとは思いますが・・。
13
10
 
14
- 普通はこうすると思います。同じく11行目を変更。
11
+ 追記:Ix.Memoize()のソースを貼っておきます。
15
-
16
- ```csharp
17
- //var mapped = xs.Select(Map);
12
+ https://github.com/dotnet/reactive/blob/main/Ix.NET/Source/System.Interactive/System/Linq/Operators/Memoize.cs
18
- var mapped = xs.Select(Map).Take(10).ToArray();
19
- ```