Ir ao conteúdo
  • Cadastre-se

Java exercicio envolvendo Arrays e menu com opções


Posts recomendados

olá pessoal, gostaria que vocês me ajudassem com esse exercício

 

Implementar as classes a seguir: a. Classe: Livro i. Atributo da classe Livro: 1. codigo (inteiro) -> não pode receber um valor menor que zero;

2. titulo(string) -> não pode receber um valor nulo ou string vazia.

3. autor (string) -> não pode receber um valor nulo ou string vazia.

ii. Implementar apenas um construtor recebendo valores para todos os atributos.

iii. Utilizar a técnica de encapsulamento  e implementar métodos get e set para todos os atributos.

 

 b. Classe: CadastroLivros

i. Atributos da classe CadastroLivros:

1. Livros (Array de objetos do tipo Livro) -> não pode manter um array nulo.

 

 2. quantidadeLivros(inteiro) -> Representa a quantidade de livros cadastrados e não pode manter um valor menor que zero.

 ii. Implementar apenas um construtor default incicializando o atributo livros com um array de tamanho 100 e o atributo quantidadeLivros com o valor 0.

iii. Utilizar a técnica de encapsulamento apresentada no curso e implementar apenas os métodos get para todos os atributos (ver observação abaixo).

iv. OBS.: Não implementar os métodos set para os atributos livros e quantidadeLivros da classe CadastroLivros. Os atributos da classe CadastroLivros serão manipulados pelos métodos inserir, buscar, remover e alterar detalhados a seguir.  

v. Métodos da classe CadastroLivros:

 

1. boolean inserir (Livro livro) que insere um objeto do tipo Livro no array livros da classe CadastroLivros. Para cada livro inserido, o atributo quantidadeLivros é incrementado de 1. O método 
retorna verdadeiro se o livro foi inserido com sucesso e falso em uma das três situações seguintes: (1) Quando o array de livros estiver cheio; (2) Se o objeto livro passado como parâmetro é nulo; ou, (3) Se já existe um livro cadastrado com o mesmo código.

2. Livro buscar (int codigo) que retorna o objeto o tipo Livro identificado pelo codigo informado como parâmetro. Caso o objeto Livro não seja encontrado retornar o valor null.  

 

3. boolean remover (int codigo) que remove o objeto do tipo Livro identificado pelo código informado como parâmetro. Para cada livro removido, o atributo quantidadeLivros é decrementado de 1. O método retorna verdadeiro se o livro foi removido com sucesso e falso em caso contrário.  

 

4. boolean alterar (Livro novoLivro) que altera o objeto do tipo Livro identificado pelo código do objeto Livro informado como parâmetro. O método retorna verdadeiro se o livro foi alterado com sucesso e falso em caso contrário. A alteração de um livro consiste em trocar o objeto Livro, previamente cadastrado com o mesmo código, pelo novo objeto Livro informado como parâmetro. OBS.: Verificar se o objeto novoLivro passado como parâmetro não é nulo.

 

 c. Implementar uma aplicação chamada AplicacaoCadastroLivros que cria um objeto do tipo CadastroLivros e oferece um menu com as opções: inserir, buscar, remover, alterar, listar todos os livros cadastrados e sair, permitindo que o usuário possa cadastrar, buscar, excluir, alterar e listar dados sobre os livros. 

 

 

 

 

 

 

 

não estou sabendo como fazer o item AplicacaoCadastroLivros, alguém poderia me ajudar? 

adicionado 2 minutos depois

esse é o meu código 

 

 



public class Livro {
	private int codigo;
	private String titulo;
	private String autor;
	
	public Livro(int codigo, String titulo, String autor) {
		super();
		this.codigo = codigo;
		this.titulo = titulo;
		this.autor = autor;
		
		if(this.codigo<0) {
			System.out.println("codigo negativo");
		}
		
		if(this.titulo == null || this.titulo == "") {
		System.out.println("titulo nulo ou vazio");
	}
		if(this.autor == null || this.autor == "") {
			System.out.println("autor nulo ou vazio");
		}
	}

	public int getCodigo() {
		return codigo;
	}

	public void setCodigo(int codigo) {
		this.codigo = codigo;
	}

	public String getTitulo() {
		return titulo;
	}

	public void setTitulo(String titulo) {
		this.titulo = titulo;
	}

	public String getAutor() {
		return autor;
	}

	public void setAutor(String autor) {
		this.autor = autor;
	}
	
	
	
}
                          
 
                          
                          

public class CadastroLivros {
	Livro livros[];
	private int qtdeLivros;
	
	
	public CadastroLivros() {
		Livro livros[] = new Livro[100];
		int qtdeLivros = 0;
	}
	
	public Livro[] getLivros() {
		return livros;
	}
	
	public int getQtdeLivros() {
		return qtdeLivros;
	}
	
	public boolean inserir(Livro livro) {
		for(int i = 0; i<this.livros.length;i++) {
			if(livros[i] == null) {
				livros[i] = livro;
				qtdeLivros++;
			}
			return true;
		} 
			return false;
	}
	
	Livro buscar(int codigo) {
		for(int i=0; i<this.livros.length; i++) {
			 if(livros[i].getCodigo() == codigo) {	
			}
			 return livros[i];
		}
			 return null;
	}
	
	boolean remover(int codigo) {
		for(int i=0; i<this.livros.length;i++) {
			if(livros[i].getCodigo() == codigo) {
				livros[i] = null;
				qtdeLivros--;
				return true;
			}
		}
				return false;
	}
	
	boolean alterar(Livro novoLivro) {
		for(int i = 0; i<livros.length; i++) {
			if(livros[i].getCodigo() == novoLivro.getCodigo() && novoLivro != null) {
				livros[i] = novoLivro;
				
				return true;
			}
		}
				return false;
	}
}

                          
                          
                          
                          

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!