2010-11-28 4 views
2

J'ai quelques méthodes dans une classe d'interpréteur pour effectuer différentes opérations. L'une de ces opérations consiste à dupliquer l'élément de la pile (opérandes). Comment ferais-je cela? Merci!Dupliquer l'élément supérieur de la pile Java

+5

Je ne suis pas certain de comprendre. stack.push (pile.peek()) – leonm

+0

Qu'avez-vous essayé? Quels problèmes avez-vous? Avez-vous push() et pop() fonctionnant? –

Répondre

1

L'une de ces opérations consiste à dupliquer un élément de la pile (opérandes). Comment ferais-je cela?

Cela dépend de la nature de «l'élément» et de la manière dont vous avez implémenté les classes d'éléments et de piles.

Si les éléments sont des valeurs immuables, il vous suffit de récupérer l'élément supérieur de la pile et de le repousser. Ou sautez-le, puis poussez-le deux fois.

Si les éléments sont mutuellement conceptuellement/réellement modifiables, vous devrez peut-être créer des copies de l'élément supérieur avant de le pousser.