Como não repetir um cabeçalho

Olá a todos, fiz uma planilha, porém não quero que se repita o cabeçalho toda vez que acrescento um valor a tabela.

while (temp.opcao == 0) {
System.out.print(“Digite a opção baixo: \n”);
System.out.print(“Digite o número de pontos do jogo (1) \n”);
System.out.print(“Conferir a tabela (2) \n”);
System.out.print(“Sair (3)\n\r”);
temp.opcao = scan.nextByte();
switch (temp.opcao) {

				case 1:
				System.out.print("Placar do Jogo: \r");
				temp.ponto = scan.nextInt();
				if (temp.ponto >= 0 && temp.ponto < 1000) {
					temp.pontos.add(temp.ponto);
					temp.jogos.add(temp.jogo + 1);
					temp.jogo += 1;
					
					if (temp.pontoMax > temp.ponto) {
						temp.pontoMax = temp.ponto;
						temp.recMax.add(temp.indiceMax);
					}
					
					if (temp.pontoMin < temp.ponto) {
						temp.pontoMin = temp.ponto;
						temp.recMin.add(temp.indiceMin);
					}
					
					temp.indiceMax += 1;
					if (temp.recMin.size() > 0) {
						temp.indiceMin += 1;
					}
					
					
					
						temp.tabela.add("\n     Jogo    "
					
							+ "|      Placar     "
							+ "|     Min. da Temporada       "
							+ "|     Máx. da Temporada        "
							+ "|     Quebra de Rec. Min.       "
							+ "|     Quebra de Rec. Max.");
					
					
					
				
					temp.tabela.add("       " + temp.jogos.get(temp.index) + "     "
							+ "        " + temp.pontos.get(temp.index) + "       "
							+ "            "+ temp.pontoMax + "                "
							+ "            "  + temp.pontoMin +"               "
							+ "              " + (temp.recMax.size() - 1)+"               "
							+ "               " + (temp.recMin.size() - 1));	
					temp.index += 1;
					temp.opcao = 0;
					break;}

Tem várias maneiras, melhores de fazer mas seguindo a lógica ai
tem uma opção de usar uma variável para controlar isso…
Uma pergunta essa logica esta dentro de um private void nomedometodo { } ?

Uma opção é adicionar o cabeçalho apenas uma vez, antes do while:

temp.tabela.add("\n     Jogo    " + "|      Placar     " + "|     Min. da Temporada       " + "|     Máx. da Temporada        "
                + "|     Quebra de Rec. Min.       " + "|     Quebra de Rec. Max.");
while (temp.opcao == 0) {
    etc...
}

Só que aí você terá o cabeçalho mesmo se nenhum item for adicionado.


Se quiser ter o cabeçalho apenas se existir algum item, basta verificar isso depois do loop. Não tentei entender a lógica do código (até porque está incompleto e sem contexto), mas pelo que entendi só faria sentido existir o cabeçalho se tiver algum jogo adicionado:

while (temp.opcao == 0) {
    etc...
}
// depois do while, verifica se algum jogo foi adicionado
if (temp.jogos.size() > 0) {
    // adiciona o cabeçalho no início da lista (índice zero)
    temp.tabela.add(0, "\n     Jogo    " + "|      Placar     " + "|     Min. da Temporada       " + "|     Máx. da Temporada        "
                    + "|     Quebra de Rec. Min.       " + "|     Quebra de Rec. Max.");
 }

Outra opção é simplesmente separar o cabeçalho dos dados. Tenha uma lista só com os dados e deixe o cabeçalho em outro lugar…