exponenta event banner

javaMethod

Описание

пример

javaMethod(MethodName,JavaObj,x1,...,xN) вызывает метод в классе массива объектов Java ® с сигнатурой, соответствующей аргументамx1,...,xN. Использовать javaMethod для вызова методов, имена которых превышают максимальную длину идентификатора MATLAB ®. Этот подход является единственным способом вызова такого метода в MATLAB. Чтобы получить максимальную длину идентификатора, вызовите namelengthmax функция.

Как правило, для вызова методов на объектах Java используется синтаксис MATLAB.

method(object,arg1,...,argn)

Также можно использовать синтаксис Java.

object.method(arg1,...,argn)

пример

javaMethod(StaticMethodName,ClassName,x1,...,xN) вызывает статический метод в классе ClassName.

Как правило, для вызова статических методов на объектах Java используется синтаксис MATLAB.

class.method(arg1,...,argn)

Примеры

свернуть все

Создать java.util.Date объект myDate и изменить месяц на апрель. Из документации Java "Месяц представлен целым числом от 0 до 11; 0 - январь, 1 - февраль и т. д. " Поэтому числовое значение для апреля равно3.

myDate = java.util.Date;
javaMethod('setMonth',myDate,3)

Звонить java.lang.Double статический метод isNaN для тестирования переменной num. С тех пор num содержит номер, сообщение не отображается.

num = 2.2;
if javaMethod('isNaN','java.lang.Double',num)
    disp('This is not a number')
end

Поиск текстового шаблона в строке с использованием переменных для шаблона и метода поиска. Эти переменные могут быть заданы во время выполнения из пользовательского ввода.

Выберите метод, startsWithи идентифицировать шаблон, str.

fnc = 'startsWith';
str = java.lang.String('Four score');

Определение текста для поиска.

gAddress = java.lang.String('Four score and seven years ago');

Поиск gAddress для шаблона.

javaMethod(fnc,gAddress,str)
ans = logical
   1

gAddress начинается со слов Four score.

Вызовите конструктор или статический метод во внутреннем классе. В javaMethod и javaObject , укажите имя класса, используя $ символ, как OuterClass$InnerClass.

Например, предположим, что класс com.ams.MyClass содержит класс MyInnerClass со статическим методом methodname. В Java синтаксис вызова:

out = com.ams.MyClass.MyInnerClass.methodname(arg);

В MATLAB введите:

out = javaMethod('methodname','com.ams.MyClass$MyInnerClass',arg)

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

свернуть все

Нестатическое имя метода Java, указанное как строковый или символьный вектор.

Пример: javaMethod('DataDefinitionAndDataManipulationTransactions',T)

Типы данных: char | string

Массив, указанный как объект Java класса, содержащего метод.

Входные аргументы метода Java, от 1 до N (если таковые имеются), необходимые для MethodName или StaticMethodName, задается любым типом. Список аргументов метода определяет тип аргумента.

Статическое имя метода Java, указанное как строковый или символьный вектор.

Пример: java.lang.Double.isNaN(2.2)

Типы данных: char | string

Имя класса Java, указанное как строковый или символьный вектор, содержащий StaticMethodName.

Типы данных: char | string

Совет

  • Использовать javaMethod для указания имени метода в качестве переменной, вызываемой во время выполнения. При вызове статического метода вместо аргумента имени класса можно также использовать переменную. Например, см. раздел Метод вызова, заданный во время выполнения.

Представлен до R2006a