Eu quero imprimir o que eu adicionei em cliente(), mas não pode ser no mesmo {}, pq é para um menu que estou fzd isso. Mas, eu não estou conseguindo, em ‘‘imp()’’ as variáveis clientes e cc, estão mencionado assim: ‘‘cannot find symbol’’
import java.util.List;
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Cliente {
public static void cliente() {
CadastroCliente cc = new CadastroCliente();
List<String> clientes = new ArrayList<>();
clientes.add(cc.nome = JOptionPane.showInputDialog("Insira o nome do cliente: "));
clientes.add(cc.CPF = JOptionPane.showInputDialog("Insira o CPF do cliente: "));
}
public static void imp() {
for (String obj: clientes) {
JOptionPane.showMessageDialog(null, cc.toString());
}
}
}
Sua lista de clientes precisa estar acessível dentro do método imp(). Você pode:
- passar a lista como parâmetro para o método;
- tornar a lista um atributo da classe Cliente;
Adicionalmente, sua lista não deveria ser do tipo CadastroCliente, em vez de String?
Abraço.
Oi, como faz para fazer isso ? Já tentei fazer a lista tipo CadastroCliente, mas aponta erro clientes.add, diz que não é compatível converter string para CadastroCliente.
CadastroCliente cc = new CadastroCliente();
cc.nome = JOptionPane.showInputDialog("Insira o nome do cliente: ");
cc.CPF = JOptionPane.showInputDialog("Insira o CPF do cliente: ");
List<CadastroCliente> clientes = new ArrayList<>();
clientes.add(cc);
entendi, valeu, mas o meu problema mesmo é no imp, não sei como imprimir o que eu aloquei em cc
Não comprendi o funcionamento desse for e a mensagem do joptionpanel n precisa de toString
Complementando a resposta do @staroski:
CadastroCliente cc = new CadastroCliente();
cc.nome = JOptionPane.showInputDialog("Insira o nome do cliente: ");
cc.CPF = JOptionPane.showInputDialog("Insira o CPF do cliente: ");
List<CadastroCliente> clientes = new ArrayList<>();
clientes.add(cc);
// aqui vc chama o método "imp" passando a lista de clientes
imp(clientes);
E o método imp pode ficar assim:
public static void imp(List<CadastroCliente> clientes) {
for (CadastroCliente cc : clientes) {
JOptionPane.showMessageDialog(null, cc.toString());
}
}
Vc conseguirá ter acesso à lista de clientes passando ela como parâmetro para o método imp.