empty

Создайте пустой массив заданного класса

Описание

Используйте ClassName.empty создать массив 0 на 0 ClassName класс. Используйте ClassName.empty(m,0) создать m-0 массив ClassName класс. Эта функция полезна для создания пустых массивов типов данных, которые не имеют специального синтаксиса для создания пустых массивов, таких как [] для двойных массивов.

пример

A = ClassName.empty возвращает пустой массив 0 на 0 класса, названного ClassName. Замените ClassName с подлинным именем класса.

пример

A = ClassName.empty(sz1,...,szN) возвращает пустой массив с заданными измерениями. По крайней мере одна из размерностей должна быть 0.

пример

A = ClassName.empty(sizeVector) возвращает пустой массив с заданными измерениями. По крайней мере одна из размерностей должна быть 0. Используйте этот синтаксис, чтобы задать пустой массив, который одного размера с существующим пустым массивом. Передайте значения, возвращенные size функционируйте как входные параметры.

Примеры

свернуть все

В этом примере показано, как создать пустой символьный массив с помощью размерностей по умолчанию, 0 на 0.

A = char.empty
A =

  0x0 empty char array

В этом примере показано, как создать пустой int16 массив с ненулевыми размерностями. Задайте 5 0 размерности как входные параметры к empty метод.

Aint = int16.empty(5,0)
Aint =

  5x0 empty int16 matrix

Используйте размер существующего пустого массива, чтобы создать массив, одного размера.

Aint = int16.empty(5,0);
Bdouble = double.empty(size(Aint))
Bdouble =

  5x0 empty double matrix

Входные параметры

свернуть все

Размерности массива, заданного как целые числа. По крайней мере одной размерностью должен быть 0. Отрицательные величины обработаны как 0. Последующие измерения 1 не включены в размер массива

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

Вектор размерностей, заданных как вектор-строка из неотрицательных целых чисел. По крайней мере одним элементом должен быть 0. Отрицательные величины обработаны как 0.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

Выходные аргументы

свернуть все

Пустой массив, возвращенный как пустой массив заданных измерений и класса, используется в вызове метода.

Больше о

свернуть все

Класс массива пустого объекта

empty метод позволяет вам инициализировать массивы определенного класса:

C = char.empty(0,7)

C =

   Empty matrix: 0-by-7

disp(class(C))
char

Инициализация массива с пустыми скобками ([]) производит пустой массив класса double:

a = [];
disp(class(a))
double

Можно инициализировать пустой массив пользовательского класса. Например, пустой статический метод является скрытым методом RGBColor класс задан здесь.

classdef ColorInRGB
   properties
      Color (1,3) = [1,0,0];
   end
   methods
      function obj = ColorInRGB(c)
         if nargin > 0
            obj.Color = c;
         end
      end
   end
end

Создать пустое 0 5 массив класса ColorInRGB, вызовите пустой метод:

A = ColorInRGB.empty(0,5);

Идентифицируйте пустые массивы

Можно использовать isemptyразмер, и length функции, чтобы идентифицировать массивы пустого объекта. Например, создайте пустой массив ColorInRGB класс задан в предыдущем разделе.

A = ColorInRGB.empty(0,5);
isempty(A)
ans =

  logical

   1
size(A)
ans =

     0     5
length(A)
ans =

     0

Конкатенация и индексация пустых массивов

Пустые массивы следуют за поведением конкатенации массивов. Например, создайте пустой массив ColorInRGB класс задан в предыдущем разделе и для нового массива путем конкатенации экземпляров в другой массив.

A = ColorInRGB.empty(0,5);
B = [A A]
B = 

  0×10 ColorInRGB array with properties:

    Color

Вы не можете индексировать в пустой массив.

B(0,3)
Index in position 1 is invalid. Array indices must be positive integers or logical values.

Советы

  • empty скрытый, общедоступный, статический метод всех неабстрактных классов MATLAB®. Можно заменить empty метод в определениях классов.

Смотрите также

| |

Введенный в R2008a