Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-01-2011, 13:39   #1
domenico88
Senior Member
 
L'Avatar di domenico88
 
Iscritto dal: Dec 2009
Messaggi: 1056
[JAVA]Chiarimenti

ciao a tutti...sono in procinto di fare un esame di programmazione ad oggetti in java...e ho bisogno di qualche chiarimento....

Ancora non ho capito bene a che cosa serve la classe interna di Map, Entry....
cioè quando si fa Map.Entry<K, v>....scusate se sono banale ma sono pieno di dubbi
domenico88 è offline   Rispondi citando il messaggio o parte di esso
Old 21-01-2011, 14:19   #2
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da domenico88 Guarda i messaggi
ciao a tutti...sono in procinto di fare un esame di programmazione ad oggetti in java...e ho bisogno di qualche chiarimento....

Ancora non ho capito bene a che cosa serve la classe interna di Map, Entry....
cioè quando si fa Map.Entry<K, v>....scusate se sono banale ma sono pieno di dubbi
Un oggetto Map.Entry rappresenta appunto una singola entry nella mappa (ovvero un'entità che incapsula una singola coppia chiave-valore).

Nel caso in cui ti occorra iterare tutti gli elementi della mappa e ti serva sia la chiave che il valore associato, è più efficiente farsi restituire dalla mappa stessa il set di Map.Entry che essa contiene e iterarlo, piuttosto che chiede alla mappa il set di chiavi che essa contiene, per poi iterarle e per ognuna far eseguire un'operazione di get alla mappa per ottenere il valore associato.

Data la mappa:
Codice:
Map<String, MyObject> map = new HashMap<String, MyObject>();
// inizializza la mappa
...
In pratica, fare così:
Codice:
for (String key : map.keySet()) {
    MyObject value = map.get(key);
    // usa key e value...
}
è meno efficiente che fare così:
Codice:
for (Map.Entry<String,MyObject> e : map.entrySet()) {
    String key = e.getKey();
    MyObject value = e.getValue();
    // usa key e value...
}
__________________

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 21-01-2011, 15:59   #3
domenico88
Senior Member
 
L'Avatar di domenico88
 
Iscritto dal: Dec 2009
Messaggi: 1056
uhm quindi usando Map.Entry diciamo che l'iterazione sulla mappa diventa più efficiente?
Sulla documentazione di java c'è scritto che il metodo entryset() ritorna una vista-collezione della mappa...e che gli oggetti Map.Entry sono validi solo per la durata dell'iterazione...

purtroppo...il mio libro dell'uni Thinking in java 4ed fa solo esempi ed esempi ed esempi sulle classi...nn tratta questi aspetti!
domenico88 è offline   Rispondi citando il messaggio o parte di esso
Old 21-01-2011, 16:16   #4
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da domenico88 Guarda i messaggi
purtroppo...il mio libro dell'uni Thinking in java 4ed fa solo esempi ed esempi ed esempi sulle classi...nn tratta questi aspetti!
Perchè queste faccende sono "dettagli dell'implementazione" e sui libri in genere non c'è abbastanza spazio per trattarli; inoltre questo tecnicamente è un'aspetto legato alla libreria piuttosto che al linguaggio Java (e in un libro il cui tema è il linguaggio di programmazione in generale è difficile che ci si addentri a parlare di queste questioni).
Inoltre Java a livello di linguaggio nudo e crudo non fornisce niente di "raffinato" in termini di collezioni già pronte all'uso (mentre ad esempio Python tra i tipi built-in, cioè facenti parte del linguaggio stesso prevede già liste, tuple, set e dizionari, dunque in un libro che tratta questo linguaggio di programmazione sicuramente li trovi trattati).

Comunque ci sbatti agevolmente la capoccia contro nel momento in cui passi dalla teoria alla pratica e per implementare le prime mini-applicazioni, affronti problemi un attimo meno che banali e cominci a sentire il bisogno di usare le collezioni della libreria in modo più "consapevole".

Quote:
...uhm quindi usando Map.Entry diciamo che l'iterazione sulla mappa diventa più efficiente?
Se devi iterare tutti gli elementi presenti è più veloce farsi dare subito dalla mappa tutte le coppie chiave-valore presenti (cioè tutti i Map.Entry) piuttosto che farsi dare tutte le chiavi dalla mappa per poi usarle una alla volta per chiedere alla mappa di trovare e restituire il valore associato ogni volta.
__________________

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)

Ultima modifica di banryu79 : 21-01-2011 alle 16:21.
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 21-01-2011, 20:03   #5
domenico88
Senior Member
 
L'Avatar di domenico88
 
Iscritto dal: Dec 2009
Messaggi: 1056
ok grazie!
domenico88 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
“Solutions Beyond Displays”: la strategi...
La società europea The Exploratio...
Dalle auto ai robot umanoidi: Faraday Fu...
Vodafone annuncia la dismissione di un s...
Stiga lancia i nuovi robot tagliaerba co...
Bullismo e cyberbullismo, Keenetic lanci...
Con AI Skills Checker Bitdefender mette ...
E-bike giapponese con 1.000 km di autono...
Un eVTOL con cui basta saper andare in b...
Dal mercato cinese al mondo: HONOR firma...
Sovranità digitale: l'UE sperimen...
Accesso alla memoria su Windows 11 solo ...
iPhone 18 Pro Max con batteria da oltre ...
Windows 11, cali di prestazioni sulle GP...
Un altro iPhone economico è in arrivo a ...
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: 19:09.


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