Witam,
Po króce opis co chce zrobić. Chce aby w Klasa2, znajdowała się lista obiektów typu Klasa1. Utworzyłem wszystko co trzeba, jednak teraz w funkcji main musze wypełnić Klasa1 (zrobione), i wywołać Klasa2 i wypełnić liste obiektami typu Klasa1 (tu jest problem). Mam nadzieje że zrozumiecie o co mi chodziło, jeżeli nie to będę się starał objaśnić dokłądniej ale myśle, że po przejrzeniu kodu każdy zrozumie o co chodzi.
import java.util.*;
import javax.swing.*;
class Klasa1{
private int numer;
private String napis;
public Klasa1(int startNumer, String startNapis){
numer=startNumer;
napis=startNapis;
}
public void setNumer(int numer){
this.numer=numer;
}
public void setNapis(String napis){
this.napis=napis;
}
public int getNumer(){
return numer;
}
public String getNapis(){
return napis;
}
}
class Klasa2{
private List<Klasa1> listaKlasa1=new ArrayList<Klasa1>();
public Klasa2(List<Klasa1> startListaKlasa1){
listaKlasa1=startListaKlasa1;
}
public List<Klasa1> getListaKlasa1(){
return listaKlasa1;
}
}
public class KlasaGlowna {
public static void main(String[] args) {
// TODO Auto-generated method stub
String liczba=JOptionPane.showInputDialog("Podaj ilosc: ");
int liczbaLiczba=Integer.parseInt(liczba);
Klasa1[] klaska1=new Klasa1[liczbaLiczba];
for (int i = 0; i < klaska1.length; i++) {
String startNumerString=JOptionPane.showInputDialog("Podaj numer: ");
int startNumer=Integer.parseInt(startNumerString);
String startNapis=JOptionPane.showInputDialog("Podaj napis: ");
klaska1[i]=new Klasa1(startNumer, startNapis);
}
for (int i = 0; i < klaska1.length; i++) {
System.out.println(klaska1[i].getNumer());
System.out.println(klaska1[i].getNapis());
System.out.println();
}
}
}
To jest kod który napisałem. Udzielono mi rady abym dopisał w klasie main linijkę:
"
Klasa2 klaska2 = new Klasa2( Arrays.asList( klaska1 ) ) ;
System.out.println(klaska2.getListaKlasa1()); //wyświetl
Wszystko się kompiluje, ale zamiast danych które wpisuje:
-Podaj liczbe: 1;
-Podaj numer: 123;
-Podaj napis: dupa;
Wyskakuje mi w konsoli:
"[Klasa1@a83b8a]".