31 / 31 / 6
Регистрация: 11.07.2013
Сообщений: 241
|
|
Возврат нескольких значений из метода13.08.2013, 09:23. Показов 30942. Ответов 11
Метки нет Все метки)
(
Здравствуйте! Собственно вопрос, какие есть варианты вернуть из метода несколько значений?
На ум приходит только массив. В C# было слово out. Допустим, что возвращать хочу примитивные типы, возможно разного типа(массив object[]? ![]()
0
|
13.08.2013, 09:23 | |
Ответы с готовыми решениями:
11
Возврат нескольких переменных из метода с async Task Возврат двух значений из метода |
![]() |
|
13.08.2013, 09:32 | |
Сделайте класс и верните из метода экземпляр.
3
|
![]() 462 / 462 / 71
Регистрация: 26.02.2013
Сообщений: 1,263
|
|
13.08.2013, 09:33 | |
сделать объект, в котором полями будут все нужные значения и возвращать его?
опоздал немного с ответом
1
|
![]() |
|
13.08.2013, 09:52 | |
1
|
![]() 2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
|
|
13.08.2013, 12:33 | |
Это единственно верная методика в 100% случаев. Потому что если данные связаны - для них можно сделать отдельный класс. Если не связаны - Вы не должны этого хотеть, т.к. это желание является нарушением SRP.
0
|
23 / 23 / 7
Регистрация: 21.04.2013
Сообщений: 52
|
|
14.08.2013, 09:52 | |
чисто теоритически
но из моей куцей практики - можно создать несколько полей класса. метод, который сейчас возвращает примитивы - его сделать так, чтоб вообще ничего не возвращал, а только изменял внутренние переменные класса. результаты работы метода, соответственно, получать через геттеры. это юзабельно если методы не равнозначные - делают разные вещи и, вероятно, должны быть в разных классах)
0
|
![]() 2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
|
|
14.08.2013, 12:09 | |
Можно. Можно вообще сделать все поля и методы public static и работать с глобальными переменными. Мы обсуждаем все варианты или только правильные? Эти поля класса логически являются частью состояния того класса, в котором реализуется метод?
0
|
14.08.2013, 12:28 | |
Не по теме: да я с сарказмом) меня привлекли к проекту, где каждый класс начинается с объявления 20и или более переменных, из которых от силы две используются во вне. и ни одну из этих 20и сделать локальными нельзя - все используются по крайней мере в двух методах. и мне говорят, мол, каждый молодой разработчик считает, что сможет сделать лучше) хотя речь не идет и том, чтоб по-другому сделать, а просто уже работающее сделать эффективнее. такие чувства :)
0
|
![]() |
|
14.08.2013, 22:04 | |
0
|
31 / 31 / 6
Регистрация: 11.07.2013
Сообщений: 241
|
|
15.08.2013, 03:16 [ТС] | |
0
|
15.08.2013, 03:16 | ||||||
Помогаю со студенческими работами здесь
12
Передача параметров и возврат значений из асинхронного метода Возврат нескольких значений в функции Возврат нескольких значений из функции
Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Работа с объемным DOM в javascript
Htext 04.04.2025
Сегодня прочитал статью тут о расходах памяти в JS, ее утечках и т. п. И вот что вспомнил из своей недавней практики. Может, кому пригодится. Хотя, в той статье об этом тоже есть.
Дело в том, что я. . .
|
Оптимизация производительности Node.js с помощью кластеризации
run.dev 04.04.2025
Масштабирование приложений для обработки тысяч и миллионов запросов — обыденная задача для многих команд. Node. js, благодаря своей асинхронной событийно-ориентированной архитектуре, стал популярной. . .
|
Управление зависимостями в Python с Poetry
py-thonny 04.04.2025
Стандартный инструмент для установки пакетов в Python - pip - прекрасно справляется с базовыми сценариями: установил пакет командой pip install и используешь его. Но что произойдёт, когда разные. . .
|
Мониторинг с Prometheus в PHP
Jason-Webb 04.04.2025
Prometheus выделяется среди других систем мониторинга своим подходом к сбору и хранению метрик. В отличие от New Relic, который использует агентный подход и отправляет данные во внешнее хранилище,. . .
|
Пакет Context в Golang: Управление потоками и ресурсами
golander 04.04.2025
Работа с горутинами в Go часто напоминает управление непослушными детьми - они разбегаются кто куда, делают что хотят и не всегда завершаются вовремя. К счастью, в Go 1. 7 появился пакет context,. . .
|
Контейнеризация React приложений с Docker
Reangularity 03.04.2025
Контейнеризация позволяет упаковать приложение со всеми его зависимостями в автономный контейнер, который можно запустить на любой платформе с установленным Docker. Это существенно упрощает процессы. . .
|
Свой попап в SwiftUI
mobDevWorks 03.04.2025
SwiftUI, как декларативный фреймворк от Apple, предоставляет множество инструментов для создания пользовательских интерфейсов. В нашем распоряжении есть такие API как alerts, popovers, action sheets. . .
|
Антипаттерны микросервисной архитектуры
ArchitectMsa 03.04.2025
Хорошо спроектированная микросервисная система может выдержать испытание временем, оставаясь гибкой, масштабируемой и устойчивой к большинству проблем. Такая архитектура обладает высоким уровнем. . .
|
std::mutex в C++: Советы и примеры использования
bytestream 03.04.2025
std::mutex - это механизм взаимного исключения, который гарантирует, что критический участок кода выполняется только одним потоком в каждый момент времени. Это простое, но могущественное средство. . .
|
Не удержался от оценки концепции двигателя Стирлинга.
Hrethgir 03.04.2025
Сколько не пытался - она выдавала правильные схемы, причём случайно рисовала горячие области в середине, холодные по краям, трубки с краёв в низ и магнит в соединяющей, но при этой выдавала описание. . .
|