Contenido principal

isa

Determinar si una entrada es una instancia de una clase especificada

Descripción

tf = isa(A,classname) devuelve 1 (true) si A es una instancia de classname o una subclase de classname. Si no, devuelve 0 (false). El argumento de entrada A puede tener cualquier tipo de datos.

Si A es un objeto, isa devuelve 1 si classname es una clase de A o una superclase de A.

ejemplo

tf = isa(A,numericCategory) devuelve 1 (true) si el tipo de datos de A pertenece a la categoría especificada por numericCategory. Si no, devuelve 0 (false).

Si A es un objeto, isa devuelve 1 si la clase de A o cualquier superclase de A pertenece a la categoría especificada.

ejemplo

Ejemplos

contraer todo

Cree una variable numérica y determine si su tipo de datos es double.

A = 3.1416;
tf = isa(A,'double')
tf = logical
   1

Cree un arreglo de enteros de 32 bits y determine si su tipo de datos es int32.

A = int32([0 2 4 6 8])
A = 1×5 int32 row vector

   0   2   4   6   8

tf = isa(A,'int32')
tf = logical
   1

Determine si el tipo de datos de A es char.

tf = isa(A,'char')
tf = logical
   0

Cree un arreglo cuyo tipo de datos sea uint8. Determine si el arreglo tiene un tipo de datos que pertenezca a la categoría integer.

A = uint8([0 2 4 6 8])
A = 1×5 uint8 row vector

   0   2   4   6   8

tf = isa(A,'integer')
tf = logical
   1

Determine si el tipo de datos de A pertenece a la categoría float.

tf = isa(A,'float')
tf = logical
   0

Argumentos de entrada

contraer todo

Arreglo de entrada.

Nombre de clase, especificado como vector de caracteres o escalar de cadena. classname puede ser el nombre de:

  • Cualquier tipo de datos fundamental o clase de MATLAB®.

  • Una clase Java® o .NET.

La tabla muestra los nombres de muchos tipos de datos de MATLAB utilizados frecuentemente.

Nombre de claseDescripción
'half'Arreglo de punto flotante de media precisión
'single'Arreglo de punto flotante de precisión simple
'double'Arreglo de punto flotante de doble precisión
'int8'Arreglo de enteros de 8 bits con signo
'int16'Arreglo de enteros de 16 bits con signo
'int32'Arreglo de enteros de 32 bits con signo
'int64'Arreglo de enteros de 64 bits con signo
'uint8'Arreglo de enteros de 8 bits sin signo
'uint16'Arreglo de enteros de 16 bits sin signo
'uint32'Arreglo de enteros de 32 bits sin signo
'uint64'Arreglo de enteros de 64 bits sin signo
'logical'Arreglo lógico de valores 1 (true) y 0 (false)
'char'Arreglo de caracteres
'string'Arreglo de cadenas
'struct'Arreglo de estructura
'cell'Arreglo de celdas
'table'Tabla
'timetable'Horario
'function_handle'Identificador de función

Categoría de tipo de datos, especificada como 'numeric', 'float' o 'integer'. Estos valores representan categorías de tipos numéricos, como se muestra en la tabla.

'numeric'

Entero o arreglo de punto flotante con uno de estos tipos de datos:

  • double

  • single

  • half

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

'float'

Arreglo de punto flotante de precisión simple o doble con cualquiera de estos tipos de datos:

  • double

  • single

  • half

'integer'

Arreglo entero con signo o sin signo con uno de estos tipos de datos:

  • int8

  • int16

  • int32

  • int64

  • uint8

  • uint16

  • uint32

  • uint64

Sugerencias

  • Para comprobar si el arreglo de entrada es disperso, utilice la función issparse.

  • Para comprobar si el arreglo de entrada tiene algún elemento imaginario o complejo, utilice ~isreal(A).

Capacidades ampliadas

expandir todo

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Generación de código de GPU
Genere código CUDA® para GPU NVIDIA® mediante GPU Coder™.

Historial de versiones

Introducido antes de R2006a