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...
Nintendo valuta una Switch 2 OLED con sc...
ChatGPT torna disponibile su WhatsApp in...
Non vuoi usare l'intelligenza artificial...
Metà del web ormai è bot: ...
Le big IA obbligate a cedere metà...
HP blocca anche le cartucce di inchiostr...
Acquisizione Apple: SigScalr chiude, gli...
Cooler Master HAF II 500 integra le vent...
I musulmani non dovrebbero usare le crip...
AMD Radeon 9000 pronte a sorpassare le N...
Soulframe, il nuovo gameplay chiarisce m...
La Commissione UE presenterà una ...
Niente più eliche: con due ali, i...
Waze si aggiorna con nuove funzioni IA: ...
Oltre 200 economisti ed esperti di IA la...
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: 07:38.


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