Легкое управление исходным кодом

Ну, это правильно, массив исправлен, вы не можете динамически увеличивать его размер. Однако вы можете создать новый массив с большим размером, скопировать предыдущие значения и установить новые элементы равными новым значениям.

Ваши комментарии кажутся шведскими, что не очень помогает. Однако вы, вероятно, хотите сделать это вместо того, чтобы удалить установку значения в нуль, а при добавлении проверить, является ли элемент нулевым, и установить его в новое значение. И если ни один не является нулем, скопируйте массив в новый с оригинальным размером + 1

        int originalSize = 10;
        object[] sodas = new object[originalSize];

        void RemoveSodaAtIndex(int index)
        {
            if(index >= 0 && index < sodas.Length)
            {
                sodas[index] = null;
            }
        }

        void AddSoda(object s)
    {
        for(int i = 0; i < sodas.Length;i++)
        {
            if(sodas[i]==null)
            {
                sodas[i] = s;
                return;
            }
        }

        originalSize += 1;
        object[] temp = new object[originalSize];
        for (int i = 0; i < temp.Length; i++)
        {
            if (i != temp.Length - 2)
            {
                temp[i] = sodas[i];
            }
            else
            {
                temp[i] = s;
            }
        }
        sodas = temp;


    }
19
задан rjzii 19 August 2008 в 20:19
поделиться