Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di Il Pazzo
    Registrato dal
    Jul 2004
    Messaggi
    1,071

    [Java]Dubbio Array, Vector, HashTable....

    Ciao a tutti.... non capisco bene un punto di un esercizio che mi ha dato il prof....
    Vuole creata una lista dove ogni elemento della lista contenga un punto (una X e una Y)... Ora... a quanto ho capito Array, Vector e List possono contenere solo un valore per ogni elemento...

    HashTable e HashMap invece, per ogni elemento posso inserire 2 valori, però uno è una chiave e non vengono accettati duplicati....

    Spero di essere stato chiaro, in ogni caso la domanda è
    Che struttura dati devo utilizzare per fare quello hce il prof richiede?
    O forse deve essere una struttura dati che creo io?? (Anche perchè la lista deve essere circolare)



    grazie e ciao

  2. #2
    beh...
    a primo pensiero se la lista deve essere circolare penso che sia più utile usare un array di un certo numero di elementi predefinito e poi giostrarci sopra con i resti delle divisioni (moduli)....
    stex1984

  3. #3
    Utente di HTML.it L'avatar di Ed_Bunker
    Registrato dal
    Jul 2003
    Messaggi
    1,119
    Dicesi astrazione...

    Ti crei un tipo Point che rappresenta il concetto di punto nel piano e che e' caratterizzaato da un'ascissa e da un'ordinata.

    Ciascun elemento del tuo array, della tua lista o del tuo vettore (Che magari potresti parametrizzare per evitare qualche cast...) sara' ora un oggetto di tipo Point.

  4. #4
    Utente di HTML.it L'avatar di Il Pazzo
    Registrato dal
    Jul 2004
    Messaggi
    1,071
    Ottimo due metodi diversi....

    Il secondo l'ho capito appieno, il primo non capisco il fatto dei moduli

  5. #5
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    sicuramente non una mappa con come chiave le X e come valore le Y perche' mi sembra che nel tuo caso non abbia alcun senso logico.

    che la lista deve essere circolare cosa significa?

    cmq potresti usare una qualsiasi (a seconda delle tue esigenze) collection che implementi List (se possono esistere coppie X/Y identiche nella tua lista), altrimenti una che implementi Set.

    come oggetto per contenere le coppie X/Y o crei come ti e' stato suggerito una classe apposta, oppure usi un array di interi tipo Integer[2] con nella posizione 0 le coordinate di X e nella posizione 1 le coordinate di Y.

  6. #6
    Utente di HTML.it L'avatar di Ed_Bunker
    Registrato dal
    Jul 2003
    Messaggi
    1,119
    Originariamente inviato da nether ... oppure usi un array di interi tipo Integer[2] con nella posizione 0 le coordinate di X e nella posizione 1 le coordinate di Y.
    O my God !!
    VVoVe:

    Ma l'astrazione sui tipi servira' pure a qualcosa...

  7. #7
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    Originariamente inviato da Ed_Bunker
    O my God !!
    VVoVe:

    Ma l'astrazione sui tipi servira' pure a qualcosa...
    Cosi', gratis?
    Una coppia di interi sara' sempre una coppia di interi ed e' descritta perfettamente da un array di interi di lunghezza due.
    Non gli ho mica proposto di fare un array di Object lungo 2 contenente un oggetto di classe Pippo nella posizione 0 e un oggetto di classe Paperino nella posizione 1.

    Non capisco tutto quanto lo sgomento... se oltre alla coppia di coordinate gli servono altre informazioni (proprieta') oppure metodi, logicamente si creera' una classe apposta (ex. la classe Point). Se invece sta facendo un esercizio o semplicemente gestendo una cosa non molto complessa (e non deve riutilizzare un qualcosa che gli rappresenti una coppia di coordinate da un'altra parte) non vedo controindicazioni all'uso di un array di interi.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.