I'm a beginner in Java, and I'm having an error in a method of the Edit class, to remove the publisher. The method to remove an author works perfectly with the same logic, since in the remove editor method it gives this error:
Followthecode:
LibraryClass,containingmethodstoremoveAuthorandPublisher
publicvoidremoverAutorAnterior(Autorcodigo){autores.remove(codigo);}publicvoidremoverEditoraAnterior(Editoracodigo){editora.remove(codigo);}
EditClass
case1:{AutorAtorAnterior=biblioteca.pesquisarAutor(codigo);System.out.println("Digite o código do autor que deseja editar:");
AtorAnterior.setCodigo(scannerNumerico.nextInt());
if(AtorAnterior==null){
System.out.println("Error: autor não encontrado");
}
else{
System.out.println("Autor encontrado:"+AtorAnterior.getNome());
Autor Autornovo= new Autor();
System.out.println("Digite um novo nome:");
Autornovo.setNome(scannerString.nextLine());
System.out.println("Digite um novo email:");
Autornovo.setEmail(scannerString.nextLine());
biblioteca.removerAutorAnterior(AtorAnterior); **irá remover o autor anterior**
biblioteca.cadastarAutor(Autornovo); **irá cadastrar o novo autor**
}
break;
}
This is where the error is in the method: biblioteca.removerEditoraPrevious (EditoraPrevious):
//Editar Editora
case 2:{
Editora EditoraAnterior=biblioteca.pesquisarEditora(codigo);
System.out.println("Digite o código da editora que deseja editar:");
EditoraAnterior.setCodigo(scannerNumerico.nextInt());
if( EditoraAnterior==null){
System.out.println("Error: Editora não encontrada");
}
else{
System.out.println("Editora encontrada:"+ EditoraAnterior.getNome());
Editora EditoraNova= new Editora();
System.out.println("Digite os novos dados:\n");
System.out.println("Digite novo nome:");
EditoraNova.setNome(scannerNumerico.nextLine());
System.out.println("Digite o novo cnpj");
EditoraNova.setCnpj(scannerNumerico.nextInt());
biblioteca.removerEditoraAnterior(EditoraAnterior);
biblioteca.cadastrarEditora(EditoraNova);
break;
}
}