Вызов метода Java

В этом примере показано, как вызвать метод java.util.ArrayList класс. Пример демонстрирует то, что это означает иметь объекты Java® как ссылки в MATLAB®.

java.util.ArrayList класс является частью библиотек стандарта Java. Поэтому класс уже находится на пути к классу Java. Если вы вызываете метод в классе, который не находится в стандартной библиотеке, то обновите путь к классу Java так, чтобы MATLAB мог найти метод. Для получения информации смотрите Путь к классу Java.

Выбор конструктора класса к объекту Create Java

Создайте ArrayList объект при помощи одного из конструкторов класса. Отобразите методы класса и ищите ArrayList записи в окне методов.

methodsview('java.util.ArrayList')
	ArrayList	(java.util.Collection)	
	ArrayList	( )	
	ArrayList	(int)	

Выберите ArrayList() синтаксис, который создает пустой список с начальной способностью 10.

Сокращение имени класса

Используйте import функция, чтобы относиться к ArrayList класс, не задавая целый пакет называет java.util.

import java.util.ArrayList

Создание списка массива

Создайте пустой ArrayList объект.

A = ArrayList;

Передайте данные MATLAB add Метод

Добавьте элементы в ArrayList объект. Посмотрите в окне методов на подписи для add метод.

void     add (int,java.lang.Object)	
boolean  add (java.lang.Object)	

Выберите boolean add(java.lang.Object) синтаксис. Аргумент java.lang.Object тип Java. Чтобы найти соответствующий тип MATLAB, посмотрите на Передачу java.lang. Объектная таблица. Если вы передаете double аргумент, MATLAB преобразует его в java.lang.Double ввод.

Добавление элементов к ArrayList

Вызывать add метод, используйте синтаксис MATLAB.

add(A,5);
A
A =

[5.0]

В качестве альтернативы используйте синтаксис Java.

A.add(10);
A
A =

[5.0, 10.0]

Объекты Java являются ссылками в MATLAB

Чтобы наблюдать поведение копирования объектов Java, присвойте A к новой переменной B.

B = A;

B ссылка на A. На любое изменение в объекте ссылается B также изменяет объект в A. Или код MATLAB или код Java могут изменить объект. Например, добавьте значение в B, и затем отобразите A.

add(B,15);
A
A =

[5.0, 10.0, 15.0]

Используйте ArrayList Объект в MATLAB

Предположим, что вы вызываете метод Java, который возвращает объект Java типа ArrayList. Если вы вызвали команды в предыдущих разделах, переменной A содержит следующие значения:

class(A)
ans =

    'java.util.ArrayList'
A
A =

[5.0, 10.0, 15.0]

Использовать A в MATLAB преобразуйте объект в любого java.lang.Object введите или к типу примитива. Затем примените cell MATLAB и cell2mat функции.

От ArrayList окно методов, найдите toArray метод, который преобразует ArrayList к java.lang.Object[].

java.lang.Object[]	toArray	(java.lang.Object[])

Преобразуйте A к java.lang.Object.

res = toArray(A)
res =

  java.lang.Object[]:

    [ 5]
    [10]
    [15]

Преобразуйте выход в тип MATLAB.

res = cell(res)'
res =

  1×3 cell array

    [5]    [10]    [15]

Чтобы преобразовать это значение в матрицу, элементами должен быть тот же тип. В этом примере значения преобразуют, чтобы ввести double.

data = cell2mat(res)
data =

     5    10    15

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

|

Связанные примеры

Больше о

Внешние веб-сайты