4

int、int型のプロパティを持つカスタム型のリストを作成する必要があります

public class CustomClass
{
   public int EmployeeID{get;set;}
   public int ClientID{get;set;}
}

リストを作成する必要がある2つのパラメーターは、Listとintです。

私の方法は

CreateCustomClassList(List<int> EmployeeIDList, int clientID}
{
List<CustomClass> lst=new List<CustomClass>();
EmployeeIDList.ForEach
  (u=>lst.Add(new CustomClass
  {
     ClientID=clientID, 
     EmployeeID=u
  });
}

これを行うためにループを実行したくありません。これを行うためのより効率的な方法はありますか。

4

1 に答える 1

6

ここで使用ToListします:

List<CustomClass> lst = EmployeeIDList
     .Select(employeeID => new CustomClass
     {
         ClientID = clientID, 
         EmployeeID = employeeID
     })
     .ToList();

それはおそらくより効率的ではありませんが、より明確になるでしょう-私の意見では、どちらがより重要です.

本当に効率が必要な場合は、おそらく、すでに拒否しているように見えるソリューション、つまり単純なループが最善の策です。

List<CustomClass> lst = new List<CustomClass>(EmployeeIDList.Count);
foreach (int employeeID in EmployeeIDList) {
    lst.Add(new CustomClass
        {
            ClientID = clientID, 
            EmployeeID = employeeID
        });
}
于 2012-04-07T04:37:00.233 に答える