Transient array contents are wiped automatically when an applet deselect event OR a card tear (reset) event occurs. This is configured when creating the transient array. This is the only way of automatically clearing all transient arrays of a particular type (deselect/reset).
Programatically, the only way to clear an array is by using Util.arrayFillNonAtomic(...). You can't trigger a fake deselect/reset event from within an applet.
However, you might find want to consider using transactions... Have a look at the JCSystem package.