public static void remover(PessoaTipo PessoaTipo) {
        listar_Pessoa(PessoaTipo);
        String frase;
        boolean erro = false;
        do {
            try {
                System.out.println("Escolha o ID que quer remover: ");
                frase = leitor.next();
                opcao = Long.parseLong(frase);
            } catch (NumberFormatException e) {
                System.out.println("Numero Incorrecto!");
                erro = true;
            }
        } while (erro);

        for (int i = 0; i <= list.size(); i++) {//PERCORRE LISTA PESSOA
            if (list.get(i).getID() == opcao) {//VE SE O ID E IGUAL A OPCAO ESCOLHIDA
                if (PessoaTipo == PessoaTipo.Artista) {//VE SE O PESSOATIPO E UM ARTISTA
                    for (int j = 0; j < WEvento.list.size(); j++) {//PERCORRE A LISTA EVENTO
                        long[] artistas = WEvento.list.get(j).getArtistas();//PASSA PARA UM ARRAY TODOS OS IDS DOS ARTISTAS DE DETERMINADO EVENTO
                        for (int k = 0; k < artistas.length; k++) {//PERCORRE O ARRAY DOS IDS DOS ARTISTAS
                            if (list.get(i).getID() == artistas[k]) {//VE SE O ID E IGUAL A ALGUNS DOS IDS DOS ARTISTASS DO EVENTO
                                if (WEvento.list.get(j).getData().after(new Date())) {
                                    for (int h = 0; h < WContracto.list.size(); h++) {//PERCORRE LISTA CONTRACTOS
                                        if (list.get(i).getID() == WContracto.list.get(h).getArtista_Id()) {
                                            System.out.println("ERRO!");
                                            System.out.println("Este Artista está tem um contracto e esta no Evento: " + WEvento.list.get(j).getEvento_ID() + ".Que acaba em " + df.format(WContracto.list.get(h).getData_Final()));
                                            escrever_Pessoa();
                                            break;
                                        }
                                    }
                                    System.out.println("ERRO!");
                                    System.out.println("Este Artista está num evento!");
                                    escrever_Pessoa();
                                    break;
                                }
                            } else {
                                list.remove(i);
                                escrever_Pessoa();
                                break;
                            }
                        }
                    }
                    for (int h = 0; h < WContracto.list.size(); h++) {//PERCORRE LISTA CONTRACTOS
                        if (list.get(i).getID() == WContracto.list.get(h).getArtista_Id()) {
                            System.out.println("ERRO!");
                            System.out.println("Este Artista está tem um contracto! Que acaba em " + df.format(WContracto.list.get(h).getData_Final()));
                            escrever_Pessoa();
                            break;
                        }
                    }
                    list.remove(i);
                } else if (PessoaTipo == PessoaTipo.Agente) {
                    for (int h = 0; h < WContracto.list.size(); h++) {//PERCORRE LISTA CONTRACTOS
                        if (list.get(i).getID() == WContracto.list.get(h).getAgente_Id()) {
                            System.out.println("ERRO!");
                            System.out.println("Este Agente tem um contracto! Que acaba em " + df.format(WContracto.list.get(h).getData_Final()));
                            escrever_Pessoa();
                            break;
                        } else {
                            list.remove(i);
                            escrever_Pessoa();
                            break;
                        }
                    }
                }
            }
        }
    }