Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    5

    Problema con i vector in un programma Java(Eclipse)

    Prima di tutto saluto tutti e vi ringrazio in anticipo per l'aiuto che spero mi darete e che io spero di ricambiare...sono più o meno 4 mesi che mi diletto di programmazione java e come piattaforma utilizzo eclipse con cui mi trovo molto bene...comunque il mio problema è il seguente...in un programma io ho la necessità di costruire un vector (fatto) il cui nome deve essere deciso da tastiera ed i cui elementi (delle stringhe per ora) devono essere a loro volta inserite da tastiera (fin qua tutto bene)...tutto funziona a dovere e non c'è alcun tipo di problema...ora ecco però arrivare un intoppo...mi servirebbe che fra le funzioni ci sia anche la possibilità di eliminare uno specifico elemento di uno dei vector...c'ho provato in qualsiasi modo ma niente sembra funzionare...spero che qualche anima pia abbia il tempo nonchè il coraggio per aiutarmi ...detto questo lascio comunque anche il mio contatto di msn per chi volesse provare...grazie

    quej07@hotmail.it

    PS. Il programma preferisco per motivazioni prettamente personali non metterlo così alla luce del sole...

  2. #2
    puoi postare anche solo le righe di codice che non funzionano. Il problema di per sé sembra banale!
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    5
    te lo mando via mp se per te va bene visto che è piuttosto lungo...

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Perché piuttosto non spieghi meglio la questione?? Hai un java.util.Vector, giusto? Bene, ci sono 4 metodi: remove(int index), remove(Object o), removeElement(Object obj) e removeElementAt(int index) . Quali sono i tuoi dubbi??
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    5
    Guarda faccio prima a darti il programma...

    comunque...io vorrei poter eliminare uno dei vani...

    ...PROGRAMMA

  6. #6
    CM Punk: il forum serve a te ma anche ad altri utenti. Se hai problema condividi problema e soluzione.
    Ora fai un piccolo sforzo e identifica la parte non funzionante del tuo codice e postala. Non so quanti hanno tempo e voglia di leggersi TUTTO il tuo programma... io no...
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    5
    scusami allora...ho capito l'errore che ho fatto...cercherò di porre rimedio...allora...come si vede dal programma io ho costruito un contenitore per un particolare tipo di oggetti (che possono essere attici, case, ecc...) bene...io per usarli ho deciso di creare un vector...come elementi del vector volevo inserire le stanze che fanno parte della casa per esempio...riesco ad inserirle... ad inserirne di nuove (attraverso un altro metodo) ma non a rimuoverle... spero di essere stato abbastanza chiaro ora...

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da CM PUNK
    io ho costruito un contenitore per un particolare tipo di oggetti (che possono essere attici, case, ecc...) bene...io per usarli ho deciso di creare un vector...come elementi del vector volevo inserire le stanze che fanno parte della casa per esempio...riesco ad inserirle... ad inserirne di nuove (attraverso un altro metodo) ma non a rimuoverle...
    Ho dato una occhiata veloce ai sorgenti. Ci sono diverse cose che non vanno e/o sono inutili.

    1) Quando vuoi usare oggetti di tue classi come elementi di una collection, nelle tue classi dovresti come minimo fare l'override del metodo equals(). E se si fa l'override di equals() in genere è bene anche fare l'override di hashCode() (nel tuo programma non usi delle Map, quindi non è una necessità così stringente ridefinire hashCode()).

    Se non fai l'override di equals(), le tue classi ereditano l'implementazione di equals() di Object, che si basa solo sulla comparazione dei reference. Che non è "sbagliata" di per sé ma probabilmente porta a comportamenti che non ti aspetti o che non vorresti.


    2) in ArchivioEdifici.java:
    String nomVano = InputDati.leggiStringaNonVuota(MESS_NOME_VANO_DA_E LIMINARE);
    Vano b=nomVano;
    elemento.rimuoviVanoEsistente(b);

    A parte il fatto che nomVano è un String e lo stai assegnando ad un reference Vano ..... cosa che certamente non può compilare correttamente.


    3) in Componente.java:
    Stato stato = (Stato)listaStati.get(i);

    Se usi i generics, non è nemmeno più necessario il cast.


    4) in Stato.java:
    return String.format(nome);

    E a che ti serve il format?? Evidentemente non hai capito a cosa fa il format(). Quello che hai scritto non ha senso.


    Non ho guardato per bene tutte le classi e tutto il codice .... quello che ti ho appena segnalato sono solo alcune cose che ho adocchiato subito.

    Se io volessi andare a cercare il "pelo nell'uovo" nei tuoi sorgenti ci sarebbero sicuramente questioni di design e OOP che non hai considerato o che hai realizzato male.

    Non te la prendere, ma posso solo suggerirti di (ri)studiare meglio le basi di Java, compreso l'override, equals(), hashCode(), collection, generics, ecc....
    Per non parlare delle convenzioni più comuni per quanto riguarda una corretta scrittura del sorgente: in particolare la indentazione.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    5
    grazie per tutto...davvero...le osservazioni che hai fatto sono tutte giuste e di rilievo...il fatto è che ho elaborato questo programma utilizzando parti che avevo creato in precedenza per altri programmi e quindi di imprecisioni c'è ne sono sicuramente...

    ...comunque il fatto di fare l'override della classe equals sarà la prima cosa che tenterò..grazie

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.