Я предполагаю, что вы имеете в виду List<string[]>
, потому что я никогда не видел родовое List<T,WhoAmI>
перед
If вы используете List<string[]>
вы можете использовать функцию ToDictionary
List<string[]> ListName = new List<string[]>();
ListName.Add(new[] { "Stack", "1" });
ListName.Add(new[] { "Overflow", "2" });
// Select the first string([0]) as the key, and parse the 2nd([1]) as int
Dictionary<string,int> result = ListName.ToDictionary(key => key[0], value => int.Parse(value[1]));
, если вы используете какое-то Касты Объект ом в списке вы также можете сделать это так же
List<MyObject<string, string>> ListName = new List<MyObject<string, string>>();
Dictionary<string, int> result = ListName.ToDictionary(key => key.String1, value => int.Parse(value.String2));
public class MyObject<T, U>
{
public MyObject(T string1, U string2)
{
String1 = string1;
String2 = string2;
}
public T String1 { get; set; }
public U String2 { get; set; }
}
Примечание: Вы должны добавить проверку ошибок вокруг int.Parse
или использовать Int.TryParse
, если есть шанс, что это не может быть числом.
Пожалуйста, покажите код. –
Какой 'List' принимает два параметра типа? Откуда берется «int»? –
Список является общим и читает файл, который содержит три поля, а один из них - int. поэтому попробуйте использовать столбец строки и столбец int как ключ и значение. – SonalKhodiyar