Przesyłanie tablicy między plikami .java

0

Witam. Za język absolutnie nieinformatyczny, proszę o wybaczenie. Czyli inaczej między różnymi publicznymi klasami. A więc mam dwuwymiarową tablicę... Czy da się ją przesłać przez metodę (która najlepiej pewnie żeby pobierała i zwracała tablicę) - znaczy obiekt? Czy jest jakiś prostszy sposób?

pozdrawiam i dziękuję za wyrozumiałość

0

Tak. Przecież obiekty mogą być argumentami wywołania metod.

0

W porządku. Tyle tylko - z tego co mi się wydaje, mój problem polega na tym (brawo, sam nie wiem czy to dobry problem), że chcę zwrócić tablicę przez jedną funkcję, ale ta tablica jest liczona tylko w innej funkcji (i na dodatek - ta funkcja pobiera dane do tablicy jeszcze skąd indziej i nawet nowo utworzonej tablicy nie zwracana - ups). Chyba się potężnie zakręciłem... To może jeszcze inaczej - czy możliwe jest zwracanie zmiennej tablicowej z elementu jednego pliku .java do drugiego (np buttona czy el menu)? Wiem, że to pola prywatne, ale np. jakaś metoda, dobierająca się do nich?

1

Błagam, zacznij od nauki podstaw. Bo pytanie o przesyłanie czegokolwiek "między plikami .java" wskazuje na to że nie masz pojęcia o czym mówisz.
Ale wracając do pytania: zmienne tablicowe mogą być zwracane przez metody.

0

Mogę tylko przeprosić, za głupoty, które wypisuje i postarać się nieco dowiedzieć więcej, nim zacznę pytać. Oczywiście, żeby zburzyć swoją wcześniejszą obietnicę, jeszcze tylko jedno pytanie, odnośnie zmiennej private (w moim wypadku elementu menu). Otóż (proszę wybaczyć nawet nie pseudo- a antykod):

public class klasaA{

public float[][] dajMatrix(){

    return tablica;

}

...

element menu, gdzie znajduje się interesująca mnie tablica

private void jMenuItem_akcjaActionPerformed(java.awt.event.ActionEvent evt) {
...

float tablica[][] - wcześniej tworzona (wypełniania) jest przy pobieraniu wartości z pola jTextArea

}

}

druga klasa

public class klasaA{
Menu_Glowne test = new Menu_Glowne();
float[][]test_t = test.dajMatrix();

}

Moje pytanie dotyczy błędu NullPointerException, jaki otrzymuję przy operacjach związanych z tą tablicą. Czy problem tkwi w tym, że przesyłam pustą tablicę? Czy cokolwiek robię tu poprawnie?

pozdrawiam

0

Zapewne tablica zwracana z dajMatrix() nie jest nawet utworzona. Jak sobie ją deklarujesz po raz drugi wewnątrz funkcji to będą 2 różne tablice.

0

Zgadza się. Na szczęście udało mi się obejść problem - trochę mocno po macoszemu (upublicznienie "dla wszystkich" zmiennej, do której przesyłane jest pole jTextArea+dodanie funkcji wypełniającej tablicę, ją również zwracającą), ale działa (choć w pewnych miejscach się wywala).

Shalom, jeszcze raz dzięki za wskazówki.

1 użytkowników online, w tym zalogowanych: 0, gości: 1