С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
 Аватар для imcavs™
-2 / 24 / 8
Регистрация: 19.02.2012
Сообщений: 446
.NET 4.x

Поиск по массиву

16.09.2018, 22:43. Показов 1992. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет, друзья.

Хочу вывести данные по отдельному городу.

C#
1
2
3
 prog = new List<Program>();
                     \\ В этот список попадают данные в след. виде:    Город - Количество населения
return prog;

Как выполнить поиск по созданному списку LIST?

Например по Москве вывести ТОЛЬКО количество населения в MessageBox.
Как к ней обратиться, и как вывести ТОЛЬКО количество.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.09.2018, 22:43
Ответы с готовыми решениями:

Не работает поиск по массиву данных + datagridview
Всем привет! Помогите пожалуйста:cry: с задачей - происходит что-то непонятное((( Суть задачу в том, что пользователь вводит фамилию,...

Поиск по массиву
Можете подсказать как реализовать, функцию, которая будет искать все значения по ключу в массиве. Массив. Пример №1. $array = array(...

Поиск по массиву
Здравствуйте! Я задался вопросом. У меня есть массив, в котором записаны номера ста телефонов, в том числе и мой номер. Все номера...

9
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
16.09.2018, 22:51
imcavs™, Использовать для этого словарь, а не список или разбирать каждую строку и загонять в словарь и использовать все прелести. Поиск по ключу, значению и т.д.
P.S. Это самый не извращенный вариант.
0
 Аватар для imcavs™
-2 / 24 / 8
Регистрация: 19.02.2012
Сообщений: 446
16.09.2018, 23:04  [ТС]
PoPsa85, как пример, скиньте пару строк.
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
17.09.2018, 00:00
imcavs™, Это если по краям дефиса пробел:
C#
1
2
3
4
5
6
7
8
List<string> collection = new List<string>() { "Москва - 500", "Воронеж - 200"};
Dictionary<string, int> citys = new Dictionary<string, int>();
foreach (var item in collection)
{
    var tmp = item.Split(new string[] {" - "},StringSplitOptions.None);
    citys.Add(tmp[0], int.Parse(tmp[1]));
}
Console.WriteLine(citys["Москва"]); //500
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16119 / 11244 / 2887
Регистрация: 21.04.2018
Сообщений: 33,063
Записей в блоге: 2
17.09.2018, 00:26
Цитата Сообщение от imcavs™ Посмотреть сообщение
Как выполнить поиск по созданному списку LIST?
Сложности нет, но надо описание типа (или класса) Program. Если он преобразуется в strig - вариант в посте #4. Если не преобразуется - нужна его (типа) структура.
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
17.09.2018, 08:33
imcavs™, Извращенный вариант:
C#
1
2
3
4
5
6
7
8
9
10
   List<string> collection = new List<string>() { "Москва - 500", "Воронеж - 200"};
                        
            var citys = collection
                .Select(x => new
                {
                    city = x.Split(new string[] { " - " }, StringSplitOptions.None)[0],
                    count = int.Parse(x.Split(new string[] { " - " }, StringSplitOptions.None)[1])
                }).ToList();
            var result = citys.Find(x => x.city.Contains("Москва"));
            Console.WriteLine(result.count);
0
 Аватар для imcavs™
-2 / 24 / 8
Регистрация: 19.02.2012
Сообщений: 446
19.09.2018, 15:19  [ТС]
C#
1
var result = citys.Find(x => x.city.Contains("Москва"));
Как проверить на null этот запрос?

Стандартный if String.Empty или if result == null не работают.
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16119 / 11244 / 2887
Регистрация: 21.04.2018
Сообщений: 33,063
Записей в блоге: 2
19.09.2018, 15:24
Цитата Сообщение от imcavs™ Посмотреть сообщение
Как проверить на null этот запрос?
Что-то непонятное.... Если не нашёл должен возвращать null.
А что Вы ищете? У Вас лямбда x => x.city.Contains("Москва") возвращает bool?
0
 Аватар для imcavs™
-2 / 24 / 8
Регистрация: 19.02.2012
Сообщений: 446
19.09.2018, 15:35  [ТС]
Ссылка на объект не указывает на экземпляр объекта.
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
19.09.2018, 16:05
Лучший ответ Сообщение было отмечено imcavs™ как решение

Решение

imcavs™, Используйте первый вариант
C#
1
2
3
4
5
6
7
8
9
List<string> collection = new List<string>() { "Москва - 500", "Воронеж - 200" };
            Dictionary<string, int> citys = new Dictionary<string, int>();
            foreach (var item in collection)
            {
                var tmp = item.Split(new string[] { " - " }, StringSplitOptions.None);
                citys.Add(tmp[0], int.Parse(tmp[1]));
            }
            Console.WriteLine(citys.ContainsKey("Москва").ToString()); //Проверка (это bool) тут вернет True
            Console.WriteLine(citys["Москва"]); //500
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.09.2018, 16:05
Помогаю со студенческими работами здесь

Поиск по массиву
Добрый вечер. Есть StringGrid, в него вводятся элементы одномерного массива. Есть три ComboBox, в них хранятся операторы, такие как...

Поиск по массиву
Всем привет, я в программировании не силен, но что-то не могу реализовать поиск по массиву(( сделал вот такой вид массива: var mass =...

Поиск по массиву
Здраствуйте. Єсть некая порблема...Єсть у нас з Екселя загруженая таблица данных .Как в ней сделать поиск, что б например при вводе в...

Поиск по массиву
Добрый день. Нужна помощь. Допустим, у нас есть такой вот массив: $mass = array('1'= 'грустный', '2' = 'нормальный', '3' =...

Поиск по массиву
Всем привет. Помогите справиться с задачей. Есть два массива. 1. Массив $category содержит множество наименований категорий с id 2....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru