Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr sbarca ufficialmente in Italia con tre modelli elettrici premium, X, 7X e 001, distribuiti da Jameel Motors su una rete di 52 punti vendita già attivi. La Zeekr X parte da 39.900 euro, la 7X da 54.100: piattaforma a 800V, chip Snapdragon di ultima generazione, ricarica ultraveloce e un'autonomia dichiarata fino a 615 km WLTP. Le prime consegne sono previste a metà aprile
Marathon: arriva il Fortnite hardcore
Marathon: arriva il Fortnite hardcore
Marathon è il titolo multiplayer competitivo del momento. Ecco quali sono le caratteristiche di gioco principali, insieme alle nostre prime considerazioni dopo qualche "run" nell'extraction shooter di Bungie
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 20-03-2008, 14:48   #1
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
[java]stampare tutti gli appuntamenti in una certa data

ciao a tutti come scritto nel titolo devo stampare tutti gli appuntamenti in una certa data gli appuntamenti sono caricati in un vector chiamato appuntamenti.
questo è il metodo incriminato che nn va mi dice di nn poter trovare il metodo getData()...
Codice PHP:
public void stampaaArrayList()
  {for (
int w=0w<appuntamenti.size();w++) 
       {if (
appuntamenti.get(w).getData().equals("18/3/2008"))
             {
System.out.println("indice nel vettore:"+w+" "+appuntamenti.get(w).toString());
              }
        }
    } 
e questo è un po di codice...
Codice PHP:
class Agenda
{
  private 
Date data;
private 
String ora;                 
private 
String nome;
private 
String cognome;
private 
String descrizione;
private 
String priorita;

Agenda(String dataString oraString nomeString cognomeString descrizioneString prioritathrows InserimentoErratoExceptionIOException,ParseException{
 
    
this.setData(data);
    
setOra(ora);
    
setNome(nome);
    
setCognome(cognome);
    
setDescrizione(descrizione);
    
setPriorita(priorita);
    }

    public 
String toString()//metodo per la lettura dell'array
 
{
    return 
"ora:"+" "+ora +" "+"data:"+data +" ""nome:"" "+nome+" "+"cognome:" +cognome+" ""descrizione:" +" "+descrizione+" ""priorita"+" "+priorita;
 }
 public 
void setData(String dataStringthrows ParseException
       
{
        
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
        
this.data sdf.parse(dataString);
       
        }


public 
String getData() {
SimpleDateFormat f = new SimpleDateFormat("dd/MM/yyyy");
        
String datainput f.format(data);  
return 
datainput;
}
public 
void setOra(String ora//simile a quello di sopra...
public void setOra(String ora//idem...
//e via dicendo per cognome descizione ecc...
private Vector appuntamenti;

    public 
Agenda ()
    {
        
appuntamenti = new Vector();
    }

    
       public 
Vector getappuntamenti()
     {
       
Vector appunt = (Vector)appuntamenti.clone();
       return 
appunt;
     }
 public 
void stampaArrayList()
{
  for (
Enumeration e appuntamenti.elements();e.hasMoreElements();) 
  for (
int w =0appuntamenti.size();w++) 
  {
      
      
System.out.println("indice nel vettore:"+w+" "+e.nextElement().toString());
  }

per favore aitatemi nn capisco l'errore!!
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 15:30   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da misterxxitalia Guarda i messaggi
mi dice di nn poter trovare il metodo getData()...
Visto che non stai usando i "generics", il metodo get() di Vector ha come tipo di ritorno Object.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 15:36   #3
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
Codice:
private Vector<Agenda> appuntamenti;

    public Agenda ()
    {
        appuntamenti = new Vector<Agenda>();
    }

    
       public Vector getappuntamenti()
     {
       Vector appunt = (Vector)appuntamenti.clone();
       return appunt;
     }
public void stampaArrayList()
{
  for (Enumeration e = appuntamenti.elements();e.hasMoreElements();)
  for (int w =0; w < appuntamenti.size();w++)
  {
      
      System.out.println("indice nel vettore:"+w+" "+e.nextElement().toString());
  }
}
oppure
Codice:
public void stampaaArrayList()
  {for (int w=0; w<appuntamenti.size();w++)
       {if ( ((Agenda)appuntamenti.get(w)).getData().equals("18/3/2008"))
             {System.out.println("indice nel vettore:"+w+" "+appuntamenti.get(w).toString());
              }
        }
    }
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 15:48   #4
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
scusa vladix ma nn posso usare le <> perchè è un linguaggio java troppo evoluto non consentito nel progetto...ma io ho il bisogno di far tornare una stringa giusto?che metodo uso allora apposto di get(w)??
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 15:54   #5
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
beh se non puoi usare i generici , bisogna fare il cast
Codice:
((Agenda)appuntamenti.get(w)).getData()
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 16:01   #6
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
scusa non conosco come funziona il cast infatti sbaglio sicuramente qualche cosa...
Codice PHP:
public void stampaaArrayList()
  {for (
int w=0w<appuntamenti.size();w++) 
       {if ((
Agenda)appuntamenti.get(w)).getData().equals("18/3/2008"))
             {
System.out.println("indice nel vettore:"+w+" "+appuntamenti.get(w).toString());
              }
        }
    } 
se magari me lo spieghi...
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 16:08   #7
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da misterxxitalia Guarda i messaggi
scusa non conosco come funziona il cast infatti sbaglio sicuramente qualche cosa...
Infatti hai dimenticato una parentesi (.

Tra l'altro, se formatti con "dd/MM/yyyy" non puoi di certo ottenere "18/3/2008" ma "18/03/2008".
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 16:20   #8
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
infatti avevi ragione!
se metto una data che esiste mi stampa l'appuntamento ma se non c'è come lancio un'eccezione??tipo la mia eccezione inserimentoerratoException..
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 16:31   #9
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
mi rispondo da solo un bell else alla fine e lancio l'eccezione!!grazie di tutto!
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 10:58   #10
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
scusate di nuovo sto facendo un controllo simile a quello di prima...
Codice PHP:
Rubrica r = new Rubrica ();//creo una nuova rubrica
Agenda a = new Agenda();//creo una nuova agenda
String rimuovi r.leggiStringa();
int i Integer.parseInt(rimuovi);int w=0
for (
int l=0w<a.getappuntamenti().size();w++) 
       {
if (((
Rubrica)r.getnominativi().get(i)).getNome().equals((Agenda)a.getappuntamenti().get(l).getNome()&&(Rubrica)r.getnominativi().get(i)).getCognome().equals((Agenda)a.getappuntamenti().get(l).getCognome()))
System.out.println("stai eliminando un nominativo che ha un appuntamento!");
else
nominativi.removeElementAt(i); 
in pratica se il mio nominativo che vado a eliminare ha lo stesso nome e cognome presente in un appuntamento mi stampa stai eliminando...altrimenti rimuovi l'elemento.il problema che qui..
Codice PHP:
.equals((Agenda)a.getappuntamenti().get(l).getNome() 
non mi fa accedere a getNome() sbaglio a fare il cast??grazie!
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 11:09   #11
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Per richiamare getNome dovresti scrivere:
Codice:
((Agenda)a.getappuntamenti().get(l)).getNome()
Così fai il cast sull'oggetto restituito dalla get e su questo (che è diventato Agenda) richiami la getNome
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 11:29   #12
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
allora ho scritto cosi...
Codice PHP:
if ((((Rubrica)r.getnominativi().get(i)).getNome().equals((Agenda)a.getappuntamenti().get(l)).getNome())&&(((Rubrica)r.getnominativi().get(i)).getCognome().equals((Agenda)a.getappuntamenti().get(l)).getCognome())); 
mi da come errore:
bolean cannot be dereferenced stai usando la notazione col punto per accedere ad un campo o ad un metodo di un altro oggetto pero la variabile che stai usando non è un oggetto:non ha ne metodi ne campi...
di quale variabile parla?che sbaglio??
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 11:36   #13
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Hai solo cannato un po' di parentesi:
Codice:
if(((Rubrica)r.getnominativi().get(i)).getNome().equals(((Agenda)a.getappuntamenti().get(l)).getNome())&&((Rubrica)r.getnominativi().get(i)).getCognome().equals(((Agenda)a.getappuntamenti().get(l)).getCognome()));
Così mi sembra corretta
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 11:59   #14
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
maledetto bluej!!hai ragione!!scusa come faccio a mettere un controllo tipo...sei sicuro di voler eliminare l'elemento??
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 12:17   #15
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Basta chiedere conferma, cioè... non vorrei darti una risposta banale, non mi sembra difficile, stampi la domanda "sicuro di voler cancellare l'elemento(y/n)?" e poi leggi la risposta, se è y cancelli, altrimenti no. Ma forse non era quello che volevi
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 12:40   #16
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
no no perfetto!le cose piu semplici sono le piu effficaci!se ho dei problemi posto. x ora grazie!!
PS if miascelta == "y"...o uso il metodo equals()???

Ultima modifica di misterxxitalia : 21-03-2008 alle 12:43.
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 13:06   #17
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Se miascelta è una String usi equals, se è un char usi miascelta=='y'. Occhio che nel caso di char si usano gli apici e non le virgolette.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 19:32   #18
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
scusate ho controllato meglio il metodo xo mi sono accorto che fa quello che si pare
ovvero scrive sempre "stai eliminando un nominativo che ha un appuntamento!"
questo è il metodo forse sbaglio qualche stupidagine!!
Codice PHP:
System.out.println ("dammi l'indice del vettore da eliminare");
System.out.println("==>");
try 
{
String rimuovi r.leggiStringa();
int i Integer.parseInt(rimuovi); 
for (
int l=0l<a.getappuntamenti().size();l++) 
       {
if(((
Rubrica)r.getnominativi().get(i)).getNome().equals(((Agenda)a.getappuntamenti().get(l)).getNome())&&((Rubrica)r.getnominativi().get(i)).getCognome().equals(((Agenda)a.getappuntamenti().get(l)).getCognome()));
System.out.println("stai eliminando un nominativo che ha un appuntamento!");

r.removeNominativo(i); 
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 19:49   #19
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Perché hai messo un ';' subito dopo l'if, questo ';' viene preso come l'unica istruzione da eseguire nel caso in cui l'if sia vero, perché non hai usato le graffe, se invece avessi racchiuso tra graffe il corpo dell'if non ci sarebbe stato alcun problema.
Praticamente se scrivo:
Codice:
if(test)
  fai qualcosa;
fai qualcos'altro;
qualcos'altro viene eseguito sempre e qualcosa solo se test è vero, se invece scrivo:
Codice:
if(test){
  fai qualcosa;
  fai qualcos'altro;
}
Entrambi vengono eseguiti solo se test è true
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 22:25   #20
misterxxitalia
Member
 
Iscritto dal: Dec 2007
Messaggi: 277
infatti avevi ragione...un punto e virgola che cambia il mondo!!grazie della spiegazione!
misterxxitalia è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è PNY RTX 5080 Slim OC, sembra una Founders Editio...
DJI Mini 4K Combo a 269€ o DJI Neo da 14...
Addio agli sprechi nel riciclo: il Fraun...
Stoccata a Nintendo: il tribunale USA re...
LG TV 2026: il W6 da 9,9 mm è sen...
Slackbot evolve: l'IA integrata in Slack...
Allarme dagli esperti: i modelli IA ment...
Saros è entrato in fase gold: il nuovo s...
Iliad lancia la TOP 170 PLUS: tutti i de...
Crimson Desert potrebbe aver superato i ...
Sony annuncia i giochi gratis PlayStatio...
Google AI Pro: lo storage passa a 5 TB s...
Apple aggiorna iPhone vecchissimi per Da...
Hormuz si paga in crypto: l'Iran accetta...
Windows 11, IA sotto controllo su Task M...
Un malware si fingeva WhatsApp e spiava ...
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: 14:20.


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