Мешайте Visual Studio закрыть программу после конца

Предположим, что если у вас есть список лиц

List<Person> persons = new ArrayList<Person>();

, то сначала сгруппируйте их по городам, а затем получите запись с максимальными значениями в списке max, которая вернет Optional из Entry так что я не усложню, я просто использую HashMap для сохранения результата, если он присутствует в необязательном порядке, иначе вернусь пустой Map

Map<String, List<Person>> resultMap = new HashMap<>();

     persons.stream()
    .collect(Collectors.groupingBy(Person::getCity)) //group by city gives Map<String,List<Person>>
    .entrySet()
    .stream()
    .max(Comparator.comparingInt(value->value.getValue().size())) // return the Optional<Entry<String, List<Person>>>
    .ifPresent(entry->resultMap.put(entry.getKey(),entry.getValue()));

//finally return resultMap
8
задан Unknown 12 May 2009 в 07:32
поделиться

5 ответов

"Запуск без отладки" делает это, но я думаю, вы все равно хотите отладить :)

3
ответ дан 5 December 2019 в 08:00
поделиться

Добавьте точку останова непосредственно перед завершением работы приложения.

10
ответ дан 5 December 2019 в 08:00
поделиться

Вы можете разместить Console.ReadLine в конце программы. Это заставит программу ждать ввода символа новой строки. Или вы можете разместить точку останова в конце пробрама.

6
ответ дан 5 December 2019 в 08:00
поделиться

Console.ReadKey () должна это сделать. Он приостановит выполнение вашей программы до тех пор, пока на клавиатуре не будет нажата какая-либо клавиша.

1
ответ дан 5 December 2019 в 08:00
поделиться

да, поскольку @matthew сказал, что Console.ReadKey () будет ждать вашего ввода после выполнения программы, но вы можете использовать Console.ReadLine (), который завершится только при нажатии клавиши :

void main()
{
    Console.WriteLine("Hello World!"); //:)
    Console.ReadLine();//this will do the trick.
}
1
ответ дан 5 December 2019 в 08:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: