O primeiro vetor determina quantas vezes você tem de andar no segundo vetor eo tamanho do segundo vetor pela soma dos números.
Você precisa salvar a última posição que você percorreu no segundo vetor e adicionar quantas vezes vai percorrer de acordo com o número do primeiro vetor.
Ou seja,
for(intj=ultimaPosicao; j < qtdVezes para nadar ; j++ )
publicstaticvoidmain(String[]args){int[]vetor1=newint[]{2,10,4,1,5};int[]vetor2;inttamanho=0;for(inti=0;i<vetor1.length;i++){tamanho+=vetor1[i];}vetor2=newint[tamanho];System.out.println("vetor2 tamanho "+vetor2.length+" da posição 0 até "+(vetor2.length-1));// determina o valor inicial p/ percorrer o vetor2intultimaPosicao=0;for(inti=0;i<vetor1.length;i++){// determina até onde vai o laço p/ o vetor2intqtdVezes=vetor1[i]+ultimaPosicao;System.out.println("posição inicial: "+ultimaPosicao+" até: "+(qtdVezes-1)+", andou no total: "+qtdVezes);for(intj=ultimaPosicao;j<qtdVezes;j++){vetor2[j]=vetor1[i];ultimaPosicao++;}}for(inti=0;i<vetor2.length;i++){System.out.println("vetor2["+i+"]="+vetor2[i]);}}