Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere?
Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere?
HONOR Magic V6 è arrivato in Italia a 2.299,90 euro con una promessa precisa: unire 4 mm di spessore da aperto (8,75 mm chiuso nel modello White, 9 mm negli altri colori) a una batteria da 6.660 mAh, la più capiente mai vista su un pieghevole. Lo abbiamo usato per oltre una settimana in versione Red 16/512 GB per capire se lo Snapdragon 8 Elite Gen 5 tiene testa alla concorrenza anche fuori dai benchmark ufficiali
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Redmi Pad 2 9.7 punta su un display ampio e fluido, una batteria capace di accompagnare l'uso quotidiano senza ansie da ricarica e un prezzo accessibile, a partire da 179,90 euro per la versione con 64 GB di storage. Lo Snapdragon 6s 4G Gen 2 e i 4 GB di RAM della configurazione più diffusa frenano però chi cerca reattività e multitasking spinto: ecco il bilancio dopo due settimane di prova diretta
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Polygon è la concept car di Peugeot che mostra il futuro delle soluzioni del segmento B: tra design compatti e innovativi affiancati da dimensioni compatte uno scherzo dalla manovrabilità incredibile per le manovre a bassa velocità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-11-2012, 22:10   #1
Albsss
Junior Member
 
Iscritto dal: Nov 2012
Messaggi: 12
Ordinamento di un ArrayList

Salve a tutti...sono nuovo nel forum!! Ho deciso di iscrivermi a questo forum perchè o vedo molto serio e completo di tutto e spero che possa risolvere anche qualche mio problema...
allora io ho fatto un programmino banale in java la cui traccia è:
un file denominato "auto" contiene le informazioni sulle auto disponibili in una concessionaria di auto usate. Ogni auto è rappresentata dalle seguenti informazioni:
costruttore
modello
cilindrata
alimentazione
anno di prima immatricolazione
costo
Scrivere un programma per l'ordinamento del file rispetto all'anno di prima immatricolazione.
Ora io ho creato le tre classi (Auto,Gestore e Tester) come di seguito:

CLASSE AUTO:
import java.io.PrintStream;
import java.util.Scanner;


public class Auto implements Comparable<Auto>{
public Auto(String costruttore,String modello,int cilindrata,String alimentazione,String annoImm,int costo){
this.costruttore = costruttore;
this.modello = modello;
this.cilindrata = cilindrata;
this.alimentazione = alimentazione;
this.annoImm = annoImm;
this.costo = costo;
}
public String getCostruttore() {
return costruttore;
}
public void setCostruttore(String costruttore) {
this.costruttore = costruttore;
}
public String getModello() {
return modello;
}
public void setModello(String modello) {
this.modello = modello;
}
public String getAlimentazione() {
return alimentazione;
}
public void setAlimentazione(String alimentazione) {
this.alimentazione = alimentazione;
}
public int getCilindrata() {
return cilindrata;
}
public void setCilindrata(int cilindrata) {
this.cilindrata = cilindrata;
}
public String getAnnoImm() {
return annoImm;
}
public void setAnnoImm(String annoImm) {
this.annoImm = annoImm;
}
public int getCosto() {
return costo;
}
public void setCosto(int costo) {
this.costo = costo;
}


public static Auto read(Scanner sc){
if(!sc.hasNext())return null;
String costruttore = sc.nextLine();
if(!sc.hasNext())return null;
String modello = sc.nextLine();
if(!sc.hasNext())return null;
String cilindrata = sc.nextLine();
if(!sc.hasNext())return null;
String alimentazione = sc.nextLine();
if(!sc.hasNext())return null;
String annoImm = sc.nextLine();
if(!sc.hasNext())return null;
String costo = sc.nextLine();

return new Auto(costruttore,modello,Integer.parseInt(cilindrata),alimentazione,annoImm,Integer.parseInt(costo));
}


@Override
public String toString() {
return "Auto [costruttore=" + costruttore + ", modello=" + modello
+ ", alimentazione=" + alimentazione + ", annoImm=" + annoImm
+ ", cilindrata=" + cilindrata + ", costo=" + costo + "]";
}


public void print(PrintStream ps){
ps.println(costruttore);
ps.println(modello);
ps.println(cilindrata);
ps.println(alimentazione);
ps.println(annoImm);
ps.println(costo);
}


public int compareTo(Auto a) {
return annoImm.compareTo(a.getAnnoImm());
}


private String costruttore,modello,alimentazione,annoImm;
private int cilindrata,costo;
}

GESTORE:
import java.io.PrintStream;
import java.util.*;


public class Gestore {
public Gestore(Scanner aut){
ArrayList<Auto> auto = new ArrayList<Auto>();
Auto a = Auto.read(aut);
while(a != null){
auto.add(a);
a = Auto.read(aut);
}
}

public void printConcessionaria(PrintStream ps){
ps.println("CONCESSIONARIA");
for(Auto a : auto){
a.print(ps);
ps.println(" ---- ");
}
}
public void rAnnoImm(PrintStream ps){
ps.println("immettere anno di immatricolazione: ");
Scanner i = new Scanner(System.in);
String s = i.nextLine();
for(Auto a : auto){
if(a.getAnnoImm().equalsIgnoreCase(s)){
ps.println(a.toString());
}
}
}
private ArrayList<Auto>auto;
}

TESTER:
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.util.Scanner;


public class Tester {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
boolean uscita = true;
PrintStream ps = new PrintStream(System.out);
Scanner in = null;
Scanner aut = null;

try{
aut = new Scanner(new File("Auto.txt"));
}
catch(FileNotFoundException e){
ps.println("FILE NON TROVATO");
}
Gestore g = new Gestore(aut);
in = new Scanner(System.in);
while(uscita){
menu(ps);
int n = in.nextInt();
if(n < 1 || n > 2){
ps.println("errore");
}
switch(n){
case 1 : g.rAnnoImm(ps);
case 2 : uscita = false;
}
}
}
public static void menu(PrintStream ps){
ps.println("Ricerca");
ps.println("1) Anno di prima immatricolazione: ");
ps.println("2) Uscire dal programma");
}
}
ora non so come procedere con l'ordinamento del file....ho provato con il collections.sort ma non riesco nell'intento...spero qualcuno possa aiutarmi...grazie

Ultima modifica di Albsss : 28-11-2012 alle 22:14. Motivo: non avevo finito di scrivere
Albsss è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2012, 13:57   #2
mone.java
Senior Member
 
L'Avatar di mone.java
 
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
Quali file devi ordinare? Cmq se intendi ordinare le auto dentro al Gestore devi fare ciò:

Codice:
public class Gestore {
    public Gestore(Scanner aut){
       ArrayList<Auto> auto = new ArrayList<Auto>();
       Auto a = Auto.read(aut);
       while(a != null){
           auto.add(a);
            a = Auto.read(aut);
       }
      Collections.sort(auto);
     }
   .........
ma una volta non erano obbligatori i tag per indicare il linguaggio?
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza"
mone.java è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2012, 07:58   #3
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da mone.java Guarda i messaggi
ma una volta non erano obbligatori i tag per indicare il linguaggio?
Sì, una volta, quando la sezione era costantemente controllata dai moderatori.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2012, 07:59   #4
mone.java
Senior Member
 
L'Avatar di mone.java
 
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
Sì, una volta, quando la sezione era costantemente controllata dai moderatori.
Significa che sta cadendo in decadenza?? Peccato...
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza"
mone.java è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere? Recensione HONOR Magic V6: spessore record e sup...
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni Redmi Pad 2 9.7: ampio display, economico e peso...
Peugeot Polygon Concept: ecco il futuro delle utilitarie Peugeot Polygon Concept: ecco il futuro delle ut...
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione Reno16 Pro: il compatto di OPPO punta su fotocam...
 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco Hisense 55U7SE: tuttofare e accessibile, il Min...
Steam ha appena chiuso un semestre molto...
I nuovi iPhone 18 Pro potrebbero essere ...
Huawei realizzerà chip di nuova g...
La JAXA ha eseguito un test del prototip...
Netflix, ritorna la prova gratuita per i...
Il satellite LINK per salvare il telesco...
Il nuovo iPhone 18 Pro Max costerà...
Il tredicesimo volo del razzo spaziale S...
Pagare il parcheggio è sempre pi&...
Torvalds: 'Non sono più un progra...
Xiaomi lavora alla nuova Smart Band 11, ...
Inabissato in Grecia, iPhone 16 Pro sopr...
Volkswagen Zukunftsplan 2030: il nuovo p...
'Non ci interessano i segreti di Apple':...
Genitori troppo connessi: uno studio riv...
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: 18:18.


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