2010-08-17 22 views
10

Sono stato generando un codice Java che utilizzava molti cast e ora la maggior parte di essi è ridondante e non necessaria.Rimuovi cast ridondanti in Java

Potrebbe essere molto noioso ispezionare tutti gli usi del codice per rimuoverli, quindi: esistono strumenti per aiutare a identificare (e rimuovere) i cast superflui?

+0

vostro IDE dovrebbe fare questo per voi. Se non stai utilizzando un IDE, perché non lo sei? –

+0

Almeno c'è un IDE che non lo fa (NetBeans). E ho le mie ragioni per usarlo su Eclipse (ovvero l'integrazione di maven) per il lavoro quotidiano. – fortran

+0

Avevo lo stesso problema in Android Studio: Analizza> Pulizia del codice – Bobby

risposta

13

Questo può essere fatto automaticamente utilizzando Eclipse Helios. Nel tuo progetto, vai su Proprietà -> Stile codice Java -> Pulizia. Qui, modifica un profilo, vai alla scheda "Codice non necessario" e seleziona "Rimuovi cast non necessari". Quindi fai clic con il pulsante destro del mouse sulla root di origine e fai clic su Source-> Clean up. Lavoro fatto.

alt text

+0

meraviglioso! : -DI era un utente di Eclipse, ma ultimamente ho usato più NetBeans ... Forse è ora di tornare^_^ – fortran

+3

note a se stessi: screenshot == big rep – musiKk

+0

postando la risposta 1 minuto prima anche fa la differenza ;-) – fortran

3

In Eclipse, in "avvisi ed errori" è possibile impostare "Cast non necessario o operazioni di instanceof" come "Avvisa" o "Errore" anziché "Ignora". Questo dovrebbe aiutarti a trovarli molto velocemente, anche se non li pulirà per te.

Ma è possibile anche impostare un'azione "Salva" configurata con una "Azione aggiuntiva" di "Rimuovi cast non necessari".

E è possibile fare clic destro su una superficie di Package Explorer, selezionare "Clean up ..." e configurare che con un azione "Rimuovere calchi inutili".

Quindi, in pratica questo dovrebbe essere semplice :)

2

Probabilmente si dovrebbe utilizzare uno strumento per analizzare il codice sorgente di Java per i potenziali problemi (come la fusione non necessaria).

Forse si può provare PMD: http://pmd.sourceforge.net

+0

L'albero di sintassi astratto contiene questi cast non necessari? Ho ispezionato un file di classe e mi sembra che il compilatore li ottimizzi. Ma suppongo che AST li contenga ancora. – pcjuzer

1

Se si utilizza Eclipse, questo dovrebbe essere abbastanza facile. Fare clic con il tasto destro del mouse sulla classe/pacchetto/progetto e selezionare Fonte - Pulire ....

8

Se si utilizza Android Studio Si tratta di una soluzione semplice: Analizza> Codice Cleanup

+0

uguale per IntelliJ (ovviamente) –