Erro get lista Java OO [resolvido]

1 resposta
G

Desculpem, me precipitei em fazer o tópico, ja resolvi tudo.
Vou deixar o código funcionando ai, so ta faltando algumas opções de pesquisa na livraria, mas a 4 ja ta funcionando.
Se alguém quiser usar, ai esta:

MAIN

package App;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

import javax.swing.JOptionPane;

import Model.Class_Autor;
import Model.Class_servico;

public class Class_main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		ArrayList<Class_Autor>lista= new ArrayList<Class_Autor>();
		SimpleDateFormat df=new SimpleDateFormat("dd/MM/yyyy");
		Date dt= new Date();
		String d;
		String nome,descricao,genero,cod;
		String titulo,editora,cod2;
		float preco;
		boolean achou;
		
		nome=JOptionPane.showInputDialog("Digite o nome do Autor ou 'fim' para finalizar: ");
		if(nome.compareToIgnoreCase("fim")==0){
			return;
		}
		while(nome.compareToIgnoreCase("fim")!=0){
			cod=JOptionPane.showInputDialog("Digite o Codigo do autor:");
			genero=JOptionPane.showInputDialog("O Genero de seus livros");
			descricao=JOptionPane.showInputDialog("Observaçoes: ");
			
			Class_Autor a= new Class_Autor(nome,descricao,genero,cod);
			
			if (JOptionPane.showInputDialog("Possui livros na livraria? (S para Sim /N para Não)").equalsIgnoreCase("s")){
				
				titulo=JOptionPane.showInputDialog("Titulo do livro ou fim");
				
				while(titulo.compareToIgnoreCase("fim")!=0){
					
					cod2=JOptionPane.showInputDialog("Codigo livro");
				
				do{
					d=(JOptionPane.showInputDialog("Data da publicação"));
					try{
						dt=df.parse(d);
						achou=true;
					}catch(Exception e){
						achou=false;
					}
				}while(!achou);
				
				editora=JOptionPane.showInputDialog("Editora ");
				preco=Float.parseFloat(JOptionPane.showInputDialog("Digite o valor do livro"));
				
				a.addClass_livro(titulo, cod2, editora, dt, preco);
				titulo=JOptionPane.showInputDialog("Titulo do livro ou fim");
				
				}
				lista.add(a);
			}
			nome=JOptionPane.showInputDialog("Autor ou fim");
		}
		
		menu(lista);

	}
	
	public static void menu(ArrayList<Class_Autor> lista){
		int val=0;
		val=Integer.parseInt(JOptionPane.showInputDialog("1 :por data/n"+" 2: por autor com mais quantidade de livros/n"+ " 3: por nome do autor/n"+ " 4: por livro/n"+ " 5: sair"));
		do{
		switch (val) {
		
		case 1 :
			Class_servico.getData(lista);
			break;
		case 2 :
			Class_servico.getQuantidade(lista);
			break;
		case 3 :
			Class_servico.getAutor(lista);
			break;
		case 4 :
			Class_servico.getLivro(lista);
			break;
		default:
			JOptionPane.showMessageDialog(null, "Numero inválido!");
			break;
		}
		}while(val==5);
	}

}

Class_Livro

package Model;

import java.text.SimpleDateFormat;
import java.util.Date;

public class Class_livro {
	
	private String codigo;
	private String titulo;
	private String editora;
	private Date dt;
	private float preco;
	
	//Constructor
		public Class_livro(String titulo, String codigo, String editora,Date dt,float preco) {
			this.titulo = titulo;
			this.codigo = codigo;
			this.editora = editora;
			this.dt=dt;
			this.preco=preco;
		}
		
		public String getCodigo() {
			return codigo;
		}

		public String getTitulo() {
			return titulo;
		}

		public String getEditora() {
			return editora;
		}

		public Date getDt() {
			return dt;
		}

		public float getPreco() {
			return preco;
		}
		
		public String toString(){
			SimpleDateFormat df= new SimpleDateFormat("dd/MM/yyyy");
			return"\n Titulo: "+ this.getTitulo()+
					"\n Codigo: "+ this.getCodigo()+
					"\n Data: "+df.format(this.getDt())+
					"\n Preço: "+ this.getPreco()+
					"\n Editora: "+ this.getEditora();
					
		}
}

Class_Autor

package Model;

import java.util.Date;
import java.util.ArrayList;

public class Class_Autor {

	private String cod;
	private String nome;
	private String genero;
	private String descricao;
	private ArrayList<Class_livro> livro = new ArrayList<Class_livro>();

	public ArrayList<Class_livro> getLista(){
		return this.livro;
	}
		
	//Constructor
		public Class_Autor(String codigo, String nome, String genero,String descricao) {
			this.cod = codigo;
			this.nome = nome;
			this.genero = genero;
			this.descricao=descricao;
		}
		
		//Agregacao
		public void addClass_livro(String titulo, String codigo,String editora,Date dt,float preco){
			this.livro.add(new Class_livro(titulo,codigo,editora,dt,preco));
			}

		public String getCod() {
			return cod;
		}

		public String getNome() {
			return nome;
		}

		public String getGenero() {
			return genero;
		}

		public String getDescricao() {
			return descricao;
		}

		public ArrayList<Class_livro> getLivro() {
			return livro;
		}
	
		public String toString(){
			return"\n Codigo: "+ this.getCod()+
					"\n Autor: "+ this.getNome()+
					"\n Genero: "+ this.getGenero()+
					"\n Descriçao: "+ this.getDescricao();
		}
	
}

1 Resposta

ViniGodoy

Ao postar tópicos, por favor, NÃO DEIXE O TÍTULO SÓ COM LETRAS MAIÚSCULAS.

Criado 26 de setembro de 2011
Ultima resposta 26 de set. de 2011
Respostas 1
Participantes 2