如何将ith项从一个List添加到另一个List

时间:2013-12-22 18:36:30

标签: c#

假设我有2个列表:

List<string> CharactersInStringEnteredByUser = new List<string>();
List<string> CharactersInAutomaticallyGeneratedString = new List<string>();

while (CharactersInStringEnteredByUser.Count < 25)
{
    CharactersInStringEnteredByUser.Add(????);
}

我想将{<1>}中的i th 项添加到CharactersInAutomaticallyGeneratedString

* 更新:*

让我澄清一下我的问题。

我想查看CharactersInStringEnteredByUser?如果是,则从if CharactersInStringEnteredByUser < 25添加第一项。

现在再次检查CharactersInAutomaticallyGeneratedString?如果是,则从if CharactersInStringEnteredByUser < 25添加第二项。

依旧......

2 个答案:

答案 0 :(得分:2)

可能你想从第一个列表中获取前25个值并将它们保存到第二个。所以你可以这样做

CharactersInStringEnteredByUser = CharactersInAutomaticallyGeneratedString.Take(25).ToList();

如果您的列表可能已经填写(当您查看其计数时),那么您可以执行此操作。

int count = CharactersInStringEnteredByUser.Count;
if(count < 25)
  CharactersInStringEnteredByUser = CharactersInAutomaticallyGeneratedString.Take(25-count).ToList();

答案 1 :(得分:0)

List<string> CharactersInStringEnteredByUser = new List<string>();
List<string> CharactersInAutomaticallyGeneratedString = new List<string>();

int i = 0;
while (CharactersInStringEnteredByUser.Count < 25)
{
    CharactersInStringEnteredByUser.Add(CharactersInAutomaticallyGeneratedString[i]);
    i++;
}

您还应验证CharactersInAutomaticallyGeneratedString是否有足够的内容。 我会在循环体中添加一个检查。

最终代码可以是:

int i = 0;
while (CharactersInStringEnteredByUser.Count < 25)
{
    if (i >= CharactersInAutomaticallyGeneratedString.Count)
        break;

    CharactersInStringEnteredByUser.Add(CharactersInAutomaticallyGeneratedString[i]);
    i++;
}