Como substituir letras no meio de uma palavra

Pessoal, estou vendo se crio um joguinho da forca… queria a opinião de vocês na parte de substituir os ---- por letras.
Acho que com o método subString da para fazer… mas vocês vêem alguma outra forma melhor para fazer ?

trabalha com um array de char e na hora de exibir converte pra string. Aí você pode atualizar as posições de forma direta.

Mas acho que é preciso pensar na lógica ao contrário: substituir letras por treços.

EIDT

melhor transformar de “-” pra letras mesmo

uhun, isso mesmo … acho que vou fazer um array de char.

Faz um método que recebe o char que você quer colocar na string e em qual posição ele deve entrar…
Exemplo:

public String substituiChar(String str,char c, int pos) {
		char[] array = new char[str.length()];
		for(int i = 0;i < array.length;i++) {
			if(i == pos){
				array[i] = c;
			} else {
				array[i] = str.charAt(i);
			}
		}
		return new String(array);
	}

[quote=felipevs]Pessoal, estou vendo se crio um joguinho da forca… queria a opinião de vocês na parte de substituir os ---- por letras.
Acho que com o método subString da para fazer… mas vocês vêem alguma outra forma melhor para fazer ?[/quote]

O replaceAll não resolve seu problema não campeão?

Nao nel, pois ele quer subtituis apenas um “-” na posicao correta, a melhor forma é utilizando um array de char, informando a posicao, igual o ismaellg disse