Quantcast

Documentation Center

  • Trial Software
  • Product Updates

isa

Determine if input is object of specified class

Syntax

tf = isa(obj,ClassName)
tf = isa(obj,classCategory)

Description

tf = isa(obj,ClassName) returns true if obj is an instance of the class specified by ClassName, and false otherwise. isa also returns true if obj is an instance of a class that is derived from ClassName.

obj can be any MATLAB® variable.

ClassName can be any of the following:

  • Name of any MATLAB class or fundamental type

  • Name of a Java®, or .NET class

 MATLAB Fundamental Types

tf = isa(obj,classCategory) returns true if obj is an instance of any of the classes in the specified classCategory, and false otherwise. isa also returns true if obj is an instance of a class that is derived from any of the classes in classCategory.

classCategory can be 'numeric', 'float', or 'integer', representing a category of numeric types:

 Categories of Numeric Types

To test for a sparse array, use issparse. To test for a complex array, use ~isreal.

Examples

These examples show the values returned by isa when passed different types:

Determine if the value returned by the pi function is of class double:

isa(pi,'double')
ans =
     1

More generally, determine if the value returned by the pi function is a numeric value:

isa(pi,'numeric')
ans =
     1

isa also returns true for the float category because the class double is a floating-point type. However, pi does not return an integer type:

isa(pi,'integer')
ans =
     0

Determine if the 2–by-3 array returned by true is of type logical:

isa(true(2,3),'logical')
ans =
     1

Identify an instance of the MATLAB containers.Map class:

mapObj = containers.Map({'Color','RGB'},...
   {'Yellow',uint8([255,255,0])});
isa(mapObj,'containers.Map')
ans =
     1

The map key, RGB, references a uint8 array:

isa(mapObj('RGB'),'integer')
ans =
     1

Specifying a particular integer class provides more specific testing:

if strcmp(mapObj('Color'),'Yellow') && isa(mapObj('RGB'),'uint8')
   % The Color is Yellow and the RGB numbers are uint8 values
   ...
end

See Also

| | | | |

Was this topic helpful?