Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/29: Рейтинг темы: голосов - 29, средняя оценка - 4.79
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190

Преобразовать object[,] в double[,]

15.08.2017, 13:34. Показов 5875. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, какие есть возможные варианты такого преобразование, кроме как полного перебора в циклах.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.08.2017, 13:34
Ответы с готовыми решениями:

Преобразовать из типа object[] в double[,]
Всем доброго времени суток. Столкнулся с некоторой проблемой: есть некоторая функция, которая возвращает возвращает значения типа object ....

Double[][] упаковка/распаковка в тип object
У меня в методе возвращается массив данных разного типа, чтобы не возникало конфликтов (данные инициализируются и присваиваются внутри...

Перевод из массива object в массив типа double
как перевести массива object в массив типа double каким нибудь стандартным методом можно

19
Злой самаритянин
182 / 182 / 94
Регистрация: 24.04.2014
Сообщений: 686
15.08.2017, 14:14
C#
1
var a = b as double[,];
https://docs.microsoft.com/ru-... eywords/as
0
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
15.08.2017, 14:19
SHIFT_969, ты уверен?

Cannot convert type 'object[*,*]' to 'double[*,*]' via a reference conversion, boxing conversion, unboxing conversion, wrapping conversion, or null type conversion
прямого способа конвертировать такие массивы нет, либо писать свой конвертер, либо перебором
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 14:21
C5674, а что хранится в массиве?
0
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190
15.08.2017, 14:27  [ТС]
kolorotur, значения типа double
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 14:32
Цитата Сообщение от C5674 Посмотреть сообщение
значения типа double
А как массив создавался? object[,] x = new object[1,2] или object[,] x = new double[1, 2]?
0
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190
15.08.2017, 14:37  [ТС]
kolorotur, не правильно, там могут быть любые числовые значения. Вот отсюда и вопрос, есть ли адекватное преобразование, помимо поэлементного. Массив возвращается функция, которая берёт данные из файла.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 14:38
Цитата Сообщение от C5674 Посмотреть сообщение
Массив возвращается функция, которая берёт данные из файла.
Как функция создает массив и заполняет его данными?
0
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190
15.08.2017, 14:38  [ТС]
kolorotur,
C#
1
var obj = new object[m,n]
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 14:42
C5674, тогда только цикл.
0
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190
15.08.2017, 14:43  [ТС]
kolorotur, а через Cast?
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 14:45
Цитата Сообщение от C5674 Посмотреть сообщение
а через Cast?
Не выйдет, потому что object[,] — массив ссылок, его не преобразовать в массив чисел.
Придется в цикле делать обход элементов и кастить их (если они все одного типа double) или конвертировать в double.
0
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190
15.08.2017, 14:54  [ТС]
kolorotur, так как я не знаю какого типа данные ко мне придут, нужно использовать ConvertTo().
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 14:55
Цитата Сообщение от C5674 Посмотреть сообщение
я не знаю какого типа данные ко мне придут
Вы же говорите они из файла считываются.
Файл бинарный?
Почему бы их все не конвертировать в double перед добавлением в массив?
0
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190
15.08.2017, 15:59  [ТС]
kolorotur, Честно говоря, не знаю какой файл. Что бы их конвертировать перед добавлением в массив, нужно будет создать еще один уровень абстракции. А я считаю, что ветка считывания уже конечная. Возможно я в не прав, но идее примерно такая.

Добавлено через 4 минуты
kolorotur, в моем понимании, более правильных подход такой: получить данные, а дальше уже с ними работать. Он более гибкий, значит в будущем, я не буду иметь больших проблем с изменением кода, если надумаю что то еще добавить. Правильно же?
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 16:01
Цитата Сообщение от C5674 Посмотреть сообщение
Что бы их конвертировать перед добавлением в массив, нужно будет создать еще один уровень абстракции.
В изначальном массиве, получается, строки хранятся?
0
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190
15.08.2017, 16:12  [ТС]
kolorotur, получается так, в объекте obj[,]. А еще я это сделал для того такую конвертацию, что бы не создавать еще одну функцию, с такой же логикой, для объекта double[,]. А переделал старую, создав промежуточную конвертацию к double[,]. Так как в будущем, именно объекты такого типа буду использовать.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 16:30
Цитата Сообщение от C5674 Посмотреть сообщение
получается так
А выше на вопрос
Цитата Сообщение от kolorotur Посмотреть сообщение
а что хранится в массиве?
вы отвечали
Цитата Сообщение от C5674 Посмотреть сообщение
значения типа double
А потом дополнили:
Цитата Сообщение от C5674 Посмотреть сообщение
не правильно, там могут быть любые числовые значения.
А в итоге — вообще строки
0
 Аватар для C5674
8 / 8 / 0
Регистрация: 08.07.2015
Сообщений: 190
15.08.2017, 16:37  [ТС]
kolorotur, числовые значения, но различного типа. Подумал что вопрос будут ли данные в изначальном массиве храниться.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.08.2017, 16:44
C5674, в любом случае придется делать конвертирование в цикле.
Если только сразу не создавать массив нужного типа и производить конвертацию в момент считывания с файла.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.08.2017, 16:44
Помогаю со студенческими работами здесь

Кортежи: Не удается неявно преобразовать тип "System.Tuple<double, double>" в "string"
Помогите.Как устранить ошибку? Ошибка CS0029 Не удается неявно преобразовать тип &quot;System.Tuple&lt;double, double&gt;&quot; в...

Как привести переменную типа Object к типу Double?
Как привести переменную типа Object к типу Double?

Конвертирование double в int, массив типа object, NullReferenceException
object doc = new object; ------------------------------------------------------------------------------------------ for...

Преобразовать object в byte[]
Друзья, добрый день! у меня есть массив ArrayList a1 = new ArrayList(); a1.AddRange((from c in db.ORG_Struct select new {...

Преобразовать object в массив..
Есть код: object rrr = new object; rrr = new string { &quot;Meatloaf&quot;, &quot;Main Dish&quot;, &quot;ground beef&quot;, &quot;**&quot; }; ...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru