Создание ссылок на массивы Java

Java® массивы в MATLAB® являются ссылками. Назначение переменной массива другой переменной приводит ко второй ссылке на массив, а не к копии массива. Для примера создайте и инициализируйте origArray.

origArray = javaArray('java.lang.Double',3,4);
for m = 1:3
    for n = 1:4
        origArray(m,n) = java.lang.Double((m*10)+n);
    end
end
origArray
origArray =

  java.lang.Double[][]:

    [11]    [12]    [13]    [14]
    [21]    [22]    [23]    [24]
    [31]    [32]    [33]    [34]

Создайте вторую ссылку на newArrayRef массива.

newArrayRef = origArray;

Измените массив, на который ссылаются newArrayRef. Изменения также появляются в origArray.

newArrayRef(3,:) = java.lang.Double(0);
origArray
origArray =

  java.lang.Double[][]:

    [11]    [12]    [13]    [14]
    [21]    [22]    [23]    [24]
    [ 0]    [ 0]    [ 0]    [ 0]

Похожие темы