Ce code:java: comment utiliser clone() et quid du contrôle cast
class RawStringIterator {
java.util.Stack<State> stateStack = new java.util.Stack<State>();
RawStringIterator(RawStringIterator i) {
stateStack = (java.util.Stack<State>) i.stateStack.clone();
}
/* ... */
}
me donne cet avertissement:
Type safety: Unchecked cast from Object to Stack<Utils.OperatorTree.RawStringIterator.State>
Je suppose que je peux ignorer l'avertissement ici. Mais je me demande comment utiliser clone()
en général? Dois-je toujours utiliser un @SuppressWarnings("unchecked")
chaque fois que j'utilise clone()
? Ou devrais-je toujours faire le contrôle supplémentaire complètement redondant?
'Stack' est 'java.util.Stack ' ici. Donc, je ne peux pas vraiment changer une déclaration là-bas. –
Albert
@Albert, vous pouvez toujours être en mesure de passer à une collection différente si - voir ma mise à jour. –
+1 pour 'Deque'. – Bozho