problemino in java

C, C++, Java, ...

problemino in java

Messaggioda isanet » 02/05/2015, 14:02

Ciao a tutti, vi contatto perchè ho bisogno di aiuto riguardo ad un piccolo problemino in java.
è da poco che studio java e mi sono imbattuto in piccolo esercizio che riguarda la scrittura in un file di testo e stamparlo, ma oltre alla semplice stampa, il problema richiede anche la lettura del file tramite inserimento di una parola da tastiera e mi dovrebbe uscire ad esempio solo gli articoli della marca inserita.
comunque sono riuscito a fare la parte in cui stampo l'archivio, ma non riesco a capire come scrivere in java le 4 richieste del problema. in pratica, come faccio a leggere ogni riga del file di testo e associarla ad esempio alla marca o al modello ecc.. e stamparla a video???

di seguito vi scrivo l'intero problema:
Si vuole automatizzare la gestione di una concessionaria di auto.
un'auto è contraddistinta da varie caratteristiche come: marca, modello, colore, cilindrata, prezzo.
il gestore della concessionaria d'auto memorizza le informazioni sulle auto disponibili all'interno di un file di testo, in modo che ciascun dato occupi una sola linea. Un file d’esempio può essere il seguente:

Fiat
Panda
Rossa
900
9000.00
Lancia
156
Grigia
1400
3000.00
……..

Per semplificare, si supponga che i dati nel file siano relative a tre auto, questo vincolo può non essere considerato nel caso si sappia usare il costrutto while.
Oltre a stampare tutto ed a verificare la disponibilità di un'auto, il gestore deve avere la possibilità di visualizzare le informazioni di:
• le auto di una certa marca
• le auto di una certa Marca e di un certo modello
• l'auto con il costo maggiore, supponendo che le abbiano costi diversi
• le auto il cui prezzo non supera un certo valore

Implementare tutte le classi necessarie scrivere anche un esempio di codice di uso per le classi implementate.

vi ringrazio in anticipo per le vostre risposte!! :)
isanet
Newbie
Newbie
 
Messaggi: 3
Iscritto il: 02/05/2015, 12:24

Re: problemino in java

Messaggioda marcomg » 02/05/2015, 14:53

Faccio una premessa: non conosco java
isanet ha scritto:in pratica, come faccio a leggere ogni riga del file di testo e associarla ad esempio alla marca o al modello ecc.. e stamparla a video???

Leggi il file linea per linea (o un insieme di linee) http://www.programcreek.com/2011/03/jav ... e-example/
sai che la prima linea è la marca, la seconda il modello, la terza ... e così via. Tutto questo si ripete n volte per quante auto. Dopo di che i dati puoi immagazzinarli come vuoi (che ne so, un array multidimensionale?).
Ciao e benvenuto :D
Windows is what you open when you want fresh air from outside.
Avatar utente
marcomg
Global Moderator
Global Moderator
 
Messaggi: 5509
Iscritto il: 22/08/2011, 18:54

Re: problemino in java

Messaggioda dalca » 03/05/2015, 8:42

Essendo un esercizio non so quali sono le istruzioni che devi usare o quali conosci.
Un metodo può essere quello di creare l'oggetto "auto" e un arraylist di auto, poi scorrere l'arraylist utilizzando la classe "Iterator". Però tutto dipende dalla finalità dell'esercizio.
Avatar utente
dalca
Jr. Member
Jr. Member
 
Messaggi: 88
Iscritto il: 18/06/2013, 8:46

Re: problemino in java

Messaggioda isanet » 03/05/2015, 9:12

marcomg ha scritto:sai che la prima linea è la marca, la seconda il modello, la terza ... e così via. Tutto questo si ripete n volte per quante auto. Dopo di che i dati puoi immagazzinarli come vuoi (che ne so, un array multidimensionale?).


innanzitutto ti ringrazio per la risposta, comunque si avevo pensato pure io una cosa del genere, di memorizzare ogni linea del file alla sua categoria ogni tot. di volte, il problema è che non riesco a tradurre tutto ciò in codice essendo un novellino nella programmazione :D .....se puoi aiutarmi in qualche modo scrivendo qualche riga di codice in modo che capisco come proseguire!!
..................................................................................................................................................
dalca ha scritto:Essendo un esercizio non so quali sono le istruzioni che devi usare o quali conosci.
Un metodo può essere quello di creare l'oggetto "auto" e un arraylist di auto, poi scorrere l'arraylist utilizzando la classe "Iterator". Però tutto dipende dalla finalità dell'esercizio.


ringrazio anche te per la risposta, allora diciamo che dovrei usare istruzioni base tipo array o arraylist, cicli e roba varia in quanto come ho detto prima sono agli inizi con la programmazione questo è solo un esercizio per rendermi conto come usare le varie istruzioni....so che chiedo troppo :D ma potresti scrivermi qualche riga della possibile soluzione che hai detto???

grazie!!
isanet
Newbie
Newbie
 
Messaggi: 3
Iscritto il: 02/05/2015, 12:24

Re: problemino in java

Messaggioda dalca » 03/05/2015, 17:08

Se non hai troppa fretta appena posso ti butto giù un esempio.....
Avatar utente
dalca
Jr. Member
Jr. Member
 
Messaggi: 88
Iscritto il: 18/06/2013, 8:46

Re: problemino in java

Messaggioda isanet » 03/05/2015, 18:15

dalca ha scritto:Se non hai troppa fretta appena posso ti butto giù un esempio.....


va bene aspetto una tua risposta... ;D
isanet
Newbie
Newbie
 
Messaggi: 3
Iscritto il: 02/05/2015, 12:24

Re: problemino in java

Messaggioda dr.virus » 28/01/2016, 12:02

questo è un esempio di main. io ho riempito un arraylist a mano, te puoi farlo tramite lettura file.

File fp = new File ("./path_e_nomeFile");
FileReader fr = new FileReader(fp);
BufferedReader br = new BufferedReader(fr);

br.readline();
br.close() oppure fp.close() non ricordo



import java.util.ArrayList;
import java.util.List;

import javax.swing.JOptionPane;

public class main {

private static List<Auto> lista = new ArrayList<Auto>();


public static void main(String[] args) {
Auto mobile = null;

mobile= new Auto();
mobile.setMarca("Fiat");
mobile.setModello("Punto");
mobile.setPrezzo(5000F);
lista.add(mobile);

mobile.setMarca("Ford");
mobile.setModello("Fiesta");
mobile.setPrezzo(3000F);
lista.add(mobile);

String sc=JOptionPane.showInputDialog("Inserisci il nome dell'auto da cercare");

for(int i=0;i<lista.size();i++){
if(lista.get(i).getMarca().equalsIgnoreCase(sc)){
System.out.println(lista.get(i).toString());
}
}
}


public static List<Auto> getLista() {
return lista;
}


public static void setLista(List<Auto> lista) {
main.lista = lista;
}



questa è la classe:

private String modello;
private String marca;
private float prezzo;

public Auto(){
super();
}

public String getModello() {
return modello;
}

public void setModello(String modello) {
this.modello = modello;
}

public String getMarca() {
return marca;
}

public void setMarca(String marca) {
this.marca = marca;
}

public float getPrezzo() {
return prezzo;
}

public void setPrezzo(float prezzo) {
this.prezzo = prezzo;
}

@Override
public String toString() {
return "Auto [modello=" + modello + ", marca=" + marca + ", prezzo=" + prezzo + "]";
}
dr.virus
Newbie
Newbie
 
Messaggi: 1
Iscritto il: 28/01/2016, 11:23

Re: problemino in java

Messaggioda lablinux » 28/01/2016, 14:36

[ot]perché java?[/ot]
Linux counter home page #501787
Linux machine #5389505
Avatar utente
lablinux
Hero Member
Hero Member
 
Messaggi: 597
Iscritto il: 03/11/2009, 11:32


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite