Problema com setVisible no JPanel

Olá, estou com um problema na hora de esconder ou chamar um JPanel, estou utilizando alguns JPanel e pra tentar diminuir o código estou tentando utilizar um vetor, deixando todos os JPanel dentro do vetor, ao tentar esconder os JPanel aparece essa mensagem: “The method setVisible(boolean) is undefined for the type String”

Segue uma parte do código e se necessário posto outra parte.(Os nome dos Itens estão renomeados por não ser um programa pessoal).

public class Programa extends JFrame {
private String[] painel = new String[10];{

painel[0] = "panelPricipal";
painel[1] = "panelUm";
painel[2] = "panelDois";
painel[3] = "panelTres";
painel[4] = "panelQuatro";
painel[5] = "panelCinco";
painel[6] = "panelSeis";
painel[7] = "panelSete";
painel[8] = "panelOito";
}
public Programa() {
	JMenuItem mntmPginaPrincipal = new JMenuItem("P\u00E1gina Principal");
	mntmPginaPrincipal.addActionListener(new ActionListener() {
   			public void actionPerformed(ActionEvent arg0) {
			for (int i = 0; i < painel.length; i++) {
                (painel[i]).setVisible(false); // O erro esta aqui.
        }
		}
	});

}

É minha primeira postagem aqui, então se eu tiver feito algo errado me desculpem.(Corrigirei assim que possível).

Você está tentando chamar o método setVisible em um objeto do tipo String e não em um objeto do tipo JPanel.

Sabe como posso resolver isso?

Chamando o método setVisible(false) do objeto JPanel que você quer ocultar.

Você disse estar utilizando alguns JPanel, no entanto eles não constam no código que você postou, sugiro que poste o código completo da sua classe.

Então, eu ja estava utilizando o setVisible(false)/(true).
O problema é estou utilizando mais de 10 JPanel, pra não ter que colocar o setVisible(false) em todos os paineis, menos no que desejo que apareça, estava tentando utilizar um Array para diminuir o código. Não acho que seja necessário postar o código inteiro, pois o problema seria ali mesmo, alem do código estar com quase 2K de linhas. Bom, caso isso seja possível, por favor me indicar o que eu poderia alterar, ou se terei que utilizar o setVisible em todos os JPanel que estou utilizando mesmo. Obrigado

Entendi o que quer fazer, mas você não pode inserir objetos do tipo JPanel em um array do tipo String.
Faça um array de JPanel.

E se sua classe tem 2 mil linhas, provavelmente você deveria segregá-la em classes menores.

Obrigado, irei tentar criar um array de JPanel e aviso se der certo ou não.
Ela está com 2 mil linhas mas é basicamente só Layout.

Por isso que é importante segregar sua tela em classes correspondentes às partes menores. :wink: