Dopo che hai chiesto "Quanti valori vuoi inserire?" e l'utente ha inserito il numero, immagino che istanzi un array di String con quella dimensione.
Se ripeti da capo questa procedura .... ovviamente crei un nuovo array e il vecchio array buonanotte .....
Se vuoi aggiungere sempre, la soluzione più pulita e pratica è usare una collezione (List). Se non ti è permesso o non vuoi usare una collezione, quando l'utente ripete la procedura di inserimento fai così (uso il tuo esempio): la seconda volta che l'utente chiede di inserire 1 elemento, prima ce n'erano già 2. Istanzi un nuovo array di 3 elementi e ricopi i primi 2 nel nuovo. Quindi parti dal nuovo indice (2).
EDIT, possiamo anche generalizzare se vuoi: se prima l'array era di N elementi e ora l'utente vuole inserirne altri M, allora istanzi un nuovo array di lunghezza N+M, ricopi i primi N elementi e poi parti ad assegnare nell'array partendo dall'indice di valore proprio N.