Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni
Sono ormai definitive le nuove norme del Codice della Strada per i monopattini elettrici. Non solo targa e assicurazione, le regole sono tante e riguardano diversi aspetti, vi spieghiamo come evitare sanzioni che possono essere salate
DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta
DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta
DLSS 4.5 introduce Dynamic Multi Frame Generation e MFG 6X, permettendo fino a cinque frame generati per ogni frame renderizzato. I test su Cyberpunk 2077 e 007 First Light mostrano forti incrementi di FPS e riduzione della latenza su RTX 5090 Laptop. Migliorano fluidità, stabilità e qualità visiva.
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere)
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere)
Quattro modi di indossarlo, stessa app del Plaud Note Pro e integrazione con il desktop. Il registratore IA da indossare di Plaud eccelle in mobilità, ma resta vincolato all'abbonamento ed è facile da perdere
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 15-06-2009, 22:00   #1
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
[Java] Oggetti fittizi

Ho ad esempio un oggetto jcombobox contenente un vector<palline>,
ora in questa lista associata ad una pallina (ha unn nome), vorrei inserire un oggetto fittizio del tipo "tutte le palline" o "nessuna pallina".
Quale è il modo migliore per procedere?
Se considero questi ultimi due oggetti come palline fittizie, mi precludo la possibilità che esistano palline che si chiamino "tutte le palline" etc..
Spero sia chiaro il concetto al di là delle palline
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2009, 22:53   #2
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Puoi usare due istanze uniche dal significato convenzionale, come in:

Codice:
public class Pallina {
     public static final Pallina NESSUNA = new Pallina();
     public static final Pallina TUTTE = new Pallina();

     ...eccetera
}
Oppure potrei non aver capito una mazza ma, che diavolo, quando mai questo ha fermato qualcuno dal dire qualcosa!
__________________
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
Old 15-06-2009, 23:14   #3
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
Quote:
Originariamente inviato da PGI-Bis Guarda i messaggi
Puoi usare due istanze uniche dal significato convenzionale, come in:

Codice:
public class Pallina {
     public static final Pallina NESSUNA = new Pallina();
     public static final Pallina TUTTE = new Pallina();

     ...eccetera
}
Oppure potrei non aver capito una mazza ma, che diavolo, quando mai questo ha fermato qualcuno dal dire qualcosa!


oddio mi hai fatto morire
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2009, 23:25   #4
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
Pallina ha come attributi nome,rimbalzi, l'equals è stato sovrascritto basandosi sull'uguaglianza di questi due valori ed il tostring mi ritorna il nome.
Ora, volendo utilizzare le istanze uniche ed assegnandoci come nome rispettivamente "tutte le palline" e "nessuna pallina", se ho riscritto il metodo equals secondo quanto sopra, mi precludo dall'esistenza di una reale pallina a avente nome "tutte le palline" etc.

Non ti preoccupare PGI-Bis , ti è concesso dire qualsiasi castroneria possibile
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2009, 23:43   #5
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Puoi creare due sottoclassi per ridefinire i comportamenti che una normale pallina avrebbe ma che NONE e ALL non possono avere in quanto valori speciali.

Codice:
public class Pallina {
    public static final Pallina NONE = new Pallina(null) {
        public String getName() { return null; }
        public int getRimbalzi() { return 0; }
        public int hashCode() { return System.identityHashCode(this); }
        public boolean equals(Object that) { return that instanceof Pallina && that == this; }
    };

}
Qui NONE è l'istanza di una classe anonima che estende Pallina. RI-RI-definendo equals e hashCode non precludi la possibilità che esista una Pallina di nome x y o z perchè NONE risulterà sempre e solo uguale a sè stesso.

Ciò premesso, non è che a te interessa semplicemente mettere nelle casella combinata due stringhe "NESSUNO" e "TUTTO" per la selezione? Se così fosse allora puoi creare un ComboBoxModel che ha sempre e comunque due stringhe in testa, vale a dire per getElementAt(0) restituisce "NESSUNO" e per getElementAt(1) restituisce "TUTTI". Un po' come i filtri automatici in Access o Excel per intenderci. TUTTI e NESSUNO si dinstinguono dalla Pallina "TUTTO" e dalla Pallina "NESSUNO" per essere Stringhe e non palline. Nota che questo non impedisce di usare una List<Palline> per il modello della ComboBox. Quando l'utente seleziona un elemento di indice maggiore di 1 devi semplicemente ricordarti di togliere 1 prima di accedere all'elemento Pallina della lista.
__________________
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
Old 16-06-2009, 01:22   #6
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
Già, hai fatto centro sulla finalità della cosa.
Effettivamente, la soluzione che proponi è semplice e pulita, e non faccio troppi giri con la classe.
Grazie mille
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni Come rispettare tutte le nuove regole per i mono...
DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta DLSS 4.5: con Dynamic Frame Generation e MFG 6X ...
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere) Plaud NotePin S, il registratore IA si fa indoss...
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro Redmi Watch 6 in prova: lo smartwatch con ampio ...
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ...
SpaceX Starfall, capsule per lo sviluppo...
Fable 5, il modello Mythos di Anthropic ...
Costruire sulla Luna: i test per le futu...
La NASA ha annunciato gli astronauti del...
Mondiale 2026, Lenovo unico partner tecn...
007 First Light ha venduto più di...
Harley-Davidson, svelato il prezzo itali...
PC Windows 11 in crash: ma la colpa è di...
Dopo i 'NO 5G' arrivano i 'NO FIBRA'? Ar...
Promettono un parco e costruiscono un da...
L'aeroplano supersonico ''silenzioso'' N...
Euro-Office sbugiardata da LibreOffice: ...
I 10 sconti TOP Amazon: 4 novità ...
Galaxy Z Flip 8, in Europa avrà i...
SpaceX annuncia i satelliti AI1 destinat...
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: 22:36.


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