質問するログイン新規登録

回答編集履歴

3

修正

2018/02/26 09:31

投稿

Zuishin
Zuishin

スコア28675

answer CHANGED
@@ -8,7 +8,7 @@
8
8
  void Action();
9
9
  }
10
10
 
11
- class Customer
11
+ class Customer : ICustomer
12
12
  {
13
13
  public string ID { get; }
14
14
 

2

修正

2018/02/26 09:30

投稿

Zuishin
Zuishin

スコア28675

answer CHANGED
@@ -35,20 +35,28 @@
35
35
  例えば次のように Customer を作っている場合
36
36
 
37
37
  ```C#
38
- Dictionary<string, Action<Customer>> customerList = new Dictionary<string, Action<Customer>>()
38
+ List<string> Ids = new List<string>()
39
39
  {
40
- { "customer1", customer => { Console.WriteLine("私は customer1"); } },
40
+ "customer1", "customer2", "customer3"
41
- { "customer2", customer => { Console.WriteLine("私は customer1 ではなく customer2"); } },
42
- { "customer3", customer => { Console.WriteLine("私は customer3 のような気がする"); } },
43
41
  };
42
+
44
- foreach (var id in customerList.Keys)
43
+ var customer1 = new Customer(Ids[0], customer =>
45
44
  {
45
+ Console.WriteLine("私は customer1");
46
+ });
46
- new Customer(id, customerList[id]);
47
+ var customer2 = new Customer(Ids[1], customer =>
47
- }
48
+ {
49
+ Console.WriteLine("私は customer2");
50
+ });
51
+ var customer3 = new Customer(Ids[2], customer =>
52
+ {
53
+ Console.WriteLine("私は customer3");
54
+
55
+ });
48
56
  ```
49
57
 
50
58
  次のようにチェックできます。
51
59
 
52
60
  ```C#
53
- Console.WriteLine(customerList.Keys.Distinct().Count() == customerList.Count() ? "重複はありません" : "重複がありました");
61
+ Console.WriteLine(Ids.Distinct().Count() == Ids.Count() ? "重複はありません" : "重複がありました");
54
62
  ```

1

修正

2018/02/26 09:28

投稿

Zuishin
Zuishin

スコア28675

answer CHANGED
@@ -35,14 +35,20 @@
35
35
  例えば次のように Customer を作っている場合
36
36
 
37
37
  ```C#
38
- List<string> Ids = new List<string>()
38
+ Dictionary<string, Action<Customer>> customerList = new Dictionary<string, Action<Customer>>()
39
39
  {
40
- "customer1", "customer2", "customer3"
40
+ { "customer1", customer => { Console.WriteLine("私は customer1"); } },
41
+ { "customer2", customer => { Console.WriteLine("私は customer1 ではなく customer2"); } },
42
+ { "customer3", customer => { Console.WriteLine("私は customer3 のような気がする"); } },
41
43
  };
42
- foreach (var id in Ids)
44
+ foreach (var id in customerList.Keys)
43
45
  {
44
- new Customer(id, customer => { });
46
+ new Customer(id, customerList[id]);
45
47
  }
46
48
  ```
47
49
 
48
- Ids 重複をチェックすればいいと思います。
50
+ ようにチェックできます。
51
+
52
+ ```C#
53
+ Console.WriteLine(customerList.Keys.Distinct().Count() == customerList.Count() ? "重複はありません" : "重複がありました");
54
+ ```