Utilização de Fila

0 respostas
java
AnnaGiuliaGatti

Estou fazendo um programa de uma companhia area que irá fazer um voo com apenas 7 lugares.

Para que seja reservado, é necessário coletar as informações tais como nome, telefone e cpf ou cnpj, e no caso, caso tenha vaga, inserir o cliente na reserva, caso não deverá ficar na fila de espera.

Pensei em usar duas filas para implementar, porém não sei como fazer.

private static void ReservarPassagem(Cliente[] clientes, int posicao) {
			
			
			
			

			String tipo = showInputDialog("É pessoa Física (F) ou pessoa Júridica(J)");
			if(tipo.equalsIgnoreCase("F")) {
			String nome = showInputDialog("Nome do cliente");
			String telefone =  showInputDialog("Telefone do cliente");
			String CPF = showInputDialog("Informe o CPF");
			Cliente_PF cliente = new Cliente_PF(nome, telefone, CPF);
			clientes[posicao] = new Cliente_PF(nome, telefone, CPF);
			
			}else {
				
				if(tipo.equalsIgnoreCase("J")) {
				
				String nome = showInputDialog("Nome da Razão Social");
				String telefone =  showInputDialog("Telefone para contato");
				String CNPJ = showInputDialog("Informe o CNPJ");
				Cliente_PJ cliente = new Cliente_PJ(nome, telefone, CNPJ);
				clientes[posicao] = new Cliente_PJ(nome, telefone, CNPJ);
				
				}else {
					
					showMessageDialog(null, "Opção inválida", "ALERTA", ERROR_MESSAGE);
					
					
				}	
				
			
                    
				
			}
	
		}

package br.xpto.fila;
import br.xpto.cliente.Cliente;

public class FilaClientes {

public class No{

Cliente dado;
	No prox;
	
	
}
 private Cliente ini;
 private Cliente fim;

public void init() {
	ini = fim = null;
}

public boolean isEmpty() {
	if (ini==null && fim==null)
		return true;
	else
		return false;
}

public void enqueue(Cliente novo) {
	novo.prox = null;
	if (isEmpty())
		ini = novo;
	else
		fim.prox = novo;	
	fim = novo;
}
	

public Cliente dequeue() {
	Cliente valor = ini;
	ini = ini.prox;
	if (ini==null)
		fim = null;
	return valor;
}

}

Criado 27 de maio de 2020
Respostas 0
Participantes 1