no he manjeado muchos vectores en java,
pero la unica manera que creo que debes hacerlo es , en efecto como lo has hecho, crear un tercer vector , puede no ser necesario de acuerdo al tipo de datos que manejes, pero en general si toca.
esto no deberia ser problema, creo..., porque cada vector o array debe tener unmetodo para copiarse a si mismo en otro vector, por lo menos en C# y delphi es asi, no se en java, pero casi que estoy seguro que se hace asi.