Ho provato a far così e non va nemmeno:
class Libro {
private String titolo;
private int pagine;
public void leggiDati(int i) {
Scanner scanner = new Scanner (System.in);
System.out.print("Inserisici il titolo del libro "+(i+1)+": ");
String titolo = scanner.nextLine ();
System.out.print("Inserisci il numero di pagine: ");
int pagine = scanner.nextInt();
}
public int numpag()
{
return pagine;
}
public String getTitolo(int i)
{
return titolo;
}
public int getPag(int i)
{
return pagine;
}
public void stampaLibri()
{
System.out.print(getTitolo()+" "+getPag());
}
public class ProgLibri {
public static void main(String[] args) {
int i=0;
//Libro maggiore; lo faccio dopo
Libro libri[] = new Libro[3];
for (i=0; i<libri.length; i++)
{
libri[i]= new Libro();
libri[i].leggiDati(i);
System.out.println("\n"+libri[i].getTitolo(i)+" pagine: "+libri[i].getPag(i));
}
in pratica voglio memorizzare i libri nell'array e poi voglio che mi venga stampata la lista. Con la teoria fino ad ora affrontata dovrei riuscire senza troppe complicazioni....
Potrebbe dipendere dal fatto che non utilizzo i seguenti per leggere i titoli da tastiera???
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader tastiera = new BufferedReader(input);