![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 9 Всего: 62 |
Как работать в C# с динамическими массивами?
Как добавлять и удалять элементы из массива? Как получить длину каждого измерения массива в отдельности? |
|||
|
||||
| Kurt |
|
|||
|
Увлеченный ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: 20 Всего: 36 |
-------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
|||
|
||||
| Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 9 Всего: 62 |
Да я знал про это.
Я имею ввиду, например: int[,] Matrix; Как с Matrix это всё провернуть??? |
|||
|
||||
| Kurt |
|
|||
|
Увлеченный ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: 20 Всего: 36 |
Насколько я знаю, добавлять/удалять элементы в такой массив нельзя.
Можно только выделить какой-то участок памяти и дальше с ним работать. А по отдельности добавлять/удалять элементы - нет. З.Ы. Именно поэтому я ответил про ArrayList. Для него это возможно. -------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
|||
|
||||
| alir |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 383 Регистрация: 19.3.2005 Репутация: 2 Всего: 4 |
Динамические массивы с C# являются объектами соответсвующих классов, определяемых нужные типы. По умолчанию при содании такого массива, его элементами становятся null, потому я не много не понимаю такого вопроса:
Но посмотрим что можно:
Там куча возможностей - ты уж это сам посмотри. Это сообщение отредактировал(а) alir - 22.4.2005, 21:57 |
||||||
|
|||||||
| Kurt |
|
||||
|
Увлеченный ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: 20 Всего: 36 |
Ну, не так уж и куча.
Добавить элемент, как хотел Vadim999, к такому массиву невозможно. Кроме того, на строчку:
VS огрызается:
-------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
||||
|
|||||
| Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 9 Всего: 62 |
alir
Очепятки в коде и массив не динамический. Kurt А незьзя этот ArrayList как-нибудь сделать двухмерным? Или если использовать статический многомерный массив, например тот же int[,] Matrix=new int[5,10] то как получить длину каждого его измерения, ведь .Length возвращает общее количество элементов. Это сообщение отредактировал(а) Vadim999 - 22.4.2005, 20:17 |
|||
|
||||
| alir |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 383 Регистрация: 19.3.2005 Репутация: 2 Всего: 4 |
Что же по твоему динамический массив? |
|||
|
||||
| Cr@$h |
|
||||
![]() Исследователь ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1693 Регистрация: 3.4.2005 Где: Санкт-Петербург, Россия Репутация: 1 Всего: 41 |
Тема интересная. Попробуй использовать преобразование ArrayList в int[]. Лови пример из Шилдта.
В чем сложность: как добавлять в двумерный массив. В ArrayList - в конец и все, а в двумерном как реализовать? В смысле куда добавлять, куда расширять размерность экстенты, по какому направлению? Здесь процедуру с одним-двумя параметрами как минимум делать придется. Одним Add'ом не обойтись... Мой вариант - создай экземпляр типа ArralList[]. Тогда каждя строчка (или столбец, как угодно) будет расширяема. НО №1 - не все одновременно, т.е. расширяя одну строчку - придется обнулять и создавать новые элементы в других, чтобы размерность была "MxN". НО №2 - число самих динамических строк нельзя будет менять динамически. |
||||
|
|||||
| mr.DUDA |
|
||||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Легко:
-------------------- ![]() |
||||
|
|||||
| Гость_Сергей |
|
|||
|
Unregistered |
По поводу того, как ArrayList сделать двумерным: сам ArrayList делать двумерным ИМХО смысла нет, но можно делать так:
То есть что тебе надо, то и добавляй в этот ArrayList P.S.: Может, я просто не понял вопроса... Тогда сорри |
|||
|
||||
| SpaceIQ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 2.7.2009 Репутация: нет Всего: нет |
||||
|
||||
| Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 9 Всего: 62 |
Спустя 7 лет зашел на форум и опа! SpaceIQ, поднял мою тему!
|
|||
|
||||
| SpaceIQ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 2.7.2009 Репутация: нет Всего: нет |
Как дела старичок? Чего делал 7 лет?
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |