Odwolanie do wartosci tablicy

0

Witam. Mam problem. Otoz chcialbym zeby napisana klasa udostepniala wartosci co k-tego elementu. Udostepnia numery elementow, i nie mam pomyslu jak zrobic zeby udostepniala ich wartosci.

public class Zadanie1
{
    private Object[] tablica; //tablica obiektow bo iterator jest uniwersalny i potrzebuje objecta jako parametr do konstruktora
    public int k;
    
    public Zadanie1(int naIle, int coKty)
    {
        tablica = new Object[naIle];
        k = coKty;
    }
    
    public void wypelnijTablice()
    {
        for (int i = 0; i < tablica.length; i++)
        {
            tablica[i] = i+1;
        }
    }
    
    public void wydruk()
    {
        Iterator it = new KArrayIterator(tablica, k);
        it.first();
        while(!it.isDone())
        {
                Object object = it.current();
                System.out.println((it.current()).toString());   //jak tutaj 'przemycic' wartosc, a nie sam numer elementu...
                it.next();
        }
        
    }
}

Bazuje tutaj na iteratorze tablicowym, ktory działa - swoja powinnosc chyba wykonuje nalezycie. Chodzi mi tylko i az jak odwolac sie do wartosci tej tablicy.

0

ale w czym jest problem?
Masz na myśli:

public Element zwróćElement(int index)
{
   return tablica[index*k]; 
}
0

No nie mam pojęcia jak to rozwiązać, bo takie coś nie działa (nie dziwne niekomatybilność typów - ale nie wiem jak to rozwiązać).

public Object zwrocWartoscElementu(Object indeks)
{
     return tablica[indeks];
    }

public void wydruk()
    {
        Iterator it = new KArrayIterator(tablica, k);
        it.first();
        while(!it.isDone())
        {
            Object object = it.current();
            System.out.println(zwrocWartoscElementu(it.current()));
            it.next();
        }
    }

0

1.W standardowej bibliotece Javy nie ma klasy KArrayIterator. Zatem bez podania kodu tej klasy nie masz szans na odpowiedź.
2.Musisz w taki właśnie sposób wyświetlać elementy tablicy ?
pozdrawiam

0

Dużo łatwiej byłoby chyba gdybyś odwoływał się do tych elementów po indexie.

0

Poza tym nie musisz wywoływać metody toString(), w tym miejscu zostanie ona wywołana automatycznie. Jeśli to jakiś typ wbudowany to powinno wyświetlaź jego wartość, a jeżeli to obiekty klasy stworzonej przez ciebie musisz w tej klasie zdefiniować metodę toString().

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