Как получить все ключи (только ключи) из объекта словаря без прохождения для каждого цикла - PullRequest
31 голосов
/ 04 марта 2011

Я проверял, есть ли у нас какой-либо способ вернуть все ключи массива без использования цикла for для каждого (нет никаких ограничений для использования для каждого цикла, который я просто смотрю, есть ли другой способ)

Заранее спасибо

Ответы [ 4 ]

61 голосов
/ 04 марта 2011

Из вашей формулировки я не уверен, хотите ли вы ключи или значения. В любом случае, это довольно просто. Используйте свойство словаря Keys или Values и метод расширения ToArray.

var arrayOfAllKeys = yourDictionary.Keys.ToArray();

var arrayOfAllValues = yourDictionary.Values.ToArray();
4 голосов
/ 04 марта 2011

Вы хотите ключи или значения?

Ключи, которые вы можете получить так:

dictionary.Keys.ToArray();

Значения, которые вы можете получить вот так;

dictionary.Values.ToArray();

Этот метод ToArray из System.Linq.Enumerable.

1 голос
/ 04 марта 2011
string[] myKeys;
myKeys = myDictionary.Keys.ToArray();

Не проверено, но я не понимаю, почему это будет работать.

0 голосов
/ 08 апреля 2019

Вы можете использовать: -

dict.Select(p => $"Keys in dict: {p.Key}")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...