关于列表的问题<;T>;

本文关键字:lt gt 问题 于列表 列表 | 更新日期: 2023-09-27 17:59:09

我有一个包含数据的列表:

public List<Client> AddClients( )
{
    List<Client> clients = new List<Client>();
    clients.Add(new Client()
    {
       Name = "MyName",
    });
    return clients;
}

我的问题是,我如何制作一个方法来在同一列表中添加新名称?

关于列表的问题<;T>;

我不确定我是否理解你的问题。

您可以在返回列表中添加新名称。

例如

var myList = AddClients();
myList.Add(new Client()
    {
        Name = "NextName"
    });

您还可以更改客户端以接受名称数组来添加客户端。

public List<Client> AddClients(IEnumerable<string> names)
{
    List<Client> clients = new List<Client>();
    foreach(var name in names)
    {
        clients.Add(new Client()
        {
           Name = name,
        });
    }
    return clients;
}

然后称之为

var myList = AddClients(new[] {"MyName", "NextName"});
// My list contains both MyName and NextName

这个问题还不清楚,但听起来你想做这样的事情:

public void AddClients(List<Client> clients, string name)
{
    clients.Add(new Client()
    {
       Name = name,
    });
    return clients;
}

您的问题有些不清楚,但假设您想使用此方法将名称添加到列表中,则应将列表作为参数传递:

public List<Client> AddClients(List<Client> clients )
{
    clients.Add(new Client()
    {
       Name = "MyName",
    });
    return clients;
}

如果你在问我认为你在问什么(我根本不确定:),那么试试这个:

public List<Client> AddClients( )
{
    List<Client> clients = new List<Client>();
    clients.Add(new Client()
    {
       Name = new Name("myname"),
    });
    return clients;
}

不能使用相同的方法传递另一个名称。请参阅下面的修改后的方法,该方法接受一个字符串参数,您可以在其中传递名称。

public List<Client> AddClients(string strName)
{
    List<Client> clients = new List<Client>();
    clients.Add(new Client()
    {
       Name = strName,
    });
    return clients;
}

所以你会打电话给

AddClients("MyName");
AddClients("MyName2")