Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto
Nothing con il suo nuovo Phone 4(a) conferma la sua identità visiva puntando su una costruzione che nobilita il policarbonato. La trasparenza resta l'elemento cardine, arricchita da una simmetria interna curata nei minimi dettagli. Il sistema Glyph si evolve, riducendosi nelle dimensioni ma aumentando l'utilità quotidiana grazie a nuove funzioni software integrate e notifiche visive. Ecco tutti i dettagli nella recensione completa
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale
Nelle ultime settimane abbiamo provato la Corsair Vanguard Air 99 Wireless, una tastiera tecnicamente da gaming, ma che in realtà offre un ampio ventaglio di possibilità anche al di fuori delle sessioni di gioco. Flessibilità e funzionalità sono le parole d'ordine di una periferica che si rivolge a chi cerca un prodotto capace di adattarsi a ogni esigenza e ogni piattaforma
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio
DEEBOT T90 PRO OMNI abbina un sistema di aspirazione basato su tecnologia BLAST ad un rullo di lavaggio dei pavimenti dalla larghezza elevata, capace di trattare al meglio le superfici di casa minimizzando i tempi di lavoro. Un robot completo che riesce anche ad essere sottile e garantire automazione ed efficienza nelle operazioni di pulizia di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 06-04-2007, 15:45   #1
BeagleKoki
Junior Member
 
Iscritto dal: Apr 2007
Messaggi: 26
[java] Aiuto! Esercizio sui libri!

Salve a tutti,
avrei bisogno di un aiuto...
Sto facendo una piccola applicazione per richiamare alcune informazioni dei libri da un file txt
Sono arrivato fino ad un punto.
Poi non so piu cosa fare.
Il testo della prima parte dell'esercizio è questo:


Scrivere una classe Java Libro con le variabili d'istanza:
1. numeroPagine
2. Titolo
3. Genere
4. Autore
5. Prezzo

Inoltre la classe deve essere dotata dei seguenti metodi:
1. Costruttore, che inizializza tutte le variabili di istanza. (Questo non so se l'ho svolto esattamente)
2. getPagine, che restituisce il numero di pagine
3. getTitolo, che restituisce il titolo
4. getGenere, che restituisce il genere
5. getAutore, che restituisce l'autore
6. getPrezzo, che restiuisce il prezzo.


Fino qui tutto bene.
Posto ugualmente il codice:

Codice:
public class Libro {

//Variabili
private int numeroPagine, prezzo;
private String autore, titolo, genere;


public Libro(String parGenere) {
this.genere=parGenere;
}

//Metodi get e set
public String getGenere(){
return this.genere;
}

public void setGenere(String pGenere){
this.genere=pGenere;
}


public int getPagine() {
return numeroPagine;
}

public void setPagine(int pagine) {
this.numeroPagine= pagine;
}

public String getTitolo() {
return titolo;
}

public void setTitolo(String nTitolo) {
this.titolo= nTitolo;
}

public String getAutore() {
return autore;
}

public void setAutore(String pAutore) {
this.autore= pAutore;
}

public int getPrezzo() {
return prezzo;
}

public void setPrezzo(int pPrezzo) {
this.prezzo=pPrezzo;
}
}
La seconda parte è:

Scrivere una classe java CatalogoLibri che rappresenti una lista di libri di una libreria.
Le informazioni sui libri della libreria sono presenti in un file con il seguente formato:

riga 1: numero libri nella libreria
riga 2: n di pagine libro 1
riga 3: titolo libro 1
riga 4: genere libro 1
riga 5: autore libro 1
riga 6: prezzo libro 1
riga 7: n di pagine libro 2
riga 8: titolo libro 2
riga 9: genere libro 2
riga 10: autore libro 2
riga 11: prezzo libro 2

Fino qui ho creato un file txt con le informazioni sui libri e la classe CatalogoLibri che posto:

Codice:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.*;


public class CatalogoLibri {


public CatalogoLibri() {
}

public static void main(String[] args) {

try {
BufferedReader file=new BufferedReader(new FileReader("InfoLibri.txt")); 

String line;


while((line=file.readLine())!=null)
{
System.out.println(line);
}
} 

catch (IOException readExcp) {
System.out.println("File non trovato");
}


}
}
Questo mi va a leggere tutte le informazioni presenti nel file txt.
Ora le cose si complicano (ultima parte dell'esercizio):

variabili di istanza:
1. Vector (o array) di oggetti Libro

Metodi:

1.Costruttore, che prende un nome di file e inizializza il vector di oggetti Libro con i dati letti dal file
2. Metodo stampaPerGenere che prende come parametro il nome di un genere e stampa le informazioni di tutti i libri di quel genere
3. Realizzare un'interfaccia grafica per il metodo stampaPerGenere: una finestra con una casella di testo per l'inserimento del nome
del genere da cercare e un pulsante che avvii la ricerca; la stampa delle informazioni di tutti i libri trovati viene fatta sul
System.out.println se viene trovato più di un libro, altrimenti, se il libro è solo uno, i dati vengono presentati sull'interfaccia grafica.

Domande:
Cosa significano queste righe?
E' giusto il codice che ho creato?
Come faccio per far leggere da file una determinata riga del file txt?
Non capisco come svolgere l'ultima parte dell'esercizio.
C'è qualcuno che mi aiuta a portare a termine l'esercizio?
grazie mille.

Ultima modifica di BeagleKoki : 06-04-2007 alle 16:09. Motivo: Visibilità codice migliorata
BeagleKoki è offline   Rispondi citando il messaggio o parte di esso
Old 06-04-2007, 16:02   #2
franksisca
Senior Member
 
L'Avatar di franksisca
 
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
scusa per la pignoleria, ma potresti gentilemente, mettere il codice tra i tag
['code]codice[/'code]
così viene in questo modo,
Codice:
ciao
altrimenti non ci capisco una mazza
__________________
My gaming placement
franksisca è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2007, 15:13   #3
BeagleKoki
Junior Member
 
Iscritto dal: Apr 2007
Messaggi: 26
Nessuno??
Non so come fare...
BeagleKoki è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2007, 15:32   #4
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Penso che le ultime righe dell'esercizio si riferiscano a CatalogoLibri. Dovresti.

1. dotare CatalogoLibri di un campo ArrayList<Libro> o LinkedList<Libro>
2. dotare CatalogoLibri di un costruttore:

public CatalogoLibri(String fileLibri)...

che tratta la stringa come il nome di un file che contiene i dati sui libri (il file txt di cui hai già parlato), apre quel file e, leggendone il contenuto, crea degli oggetti Libro, aggiungendoli al vettore (ArrayList<Libro> o LinkedList<Libro>) campo di CatalogoLibri.

3. dotare CatalogoLibri del metodo stampaPerGenere:

Codice:
/* pseudo */
public void stampaPerGenere(String genere) {
    ...per ogni libro x nel vettore
        ...se x.getGenere().equals(genere)
            ...stampa il libro sulla console
}
Per l'interfaccia grafica devi rifarti a quanto avete discusso a lezione in tema di interfacce grafiche utente.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto Recensione Nothing Phone 4(a): sempre iconico ma...
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale Corsair Vanguard Air 99 Wireless: non si era mai...
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lav...
Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo Recensione Samsung Galaxy S26 Ultra: finalmente ...
Diablo II Resurrected: il nuovo DLC Reign of the Warlock Diablo II Resurrected: il nuovo DLC Reign of the...
NVIDIA non ha intenzione, almeno per ora...
Recensione Realme 16 Pro+ 5G: la fascia ...
FBI, ammesso l'acquisto di dati privati:...
Realme 16 Pro e 16 Pro+ in evidenza: car...
I prossimi mid-range di Samsung utilizze...
Lyten avvierà la produzione di batterie ...
Sony INZONE H9 II in sconto su Amazon: c...
Micron vola grazie alla crisi delle memo...
Sony Music contro la musica fake: oltre ...
NVIDIA DLSS 5 a sorpresa: molti sviluppa...
I nuovi Xiaomi 17T e 17T Pro sono vicini...
Scandalo in aula a Londra: testimone usa...
Starlink cambia le tariffe anche per i v...
Monitor in offerta su Amazon: dal gaming...
Core i7-13645HX spunta dal nulla: un nuo...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:46.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v