Ir ao conteúdo

Posts recomendados

Postado

Olá, me enviaram uma estrutura e me pediram pra adicionar funções de limpeza e reimplementar o código usando o <list> porém não sei como posso usar uma função de limpeza em java, por isso criei outra classe "clear" e fiz uma gambiarra usando o arraylist abaixo do main porém surgiram diversos erros. Alguém conseu

public class Fila {
	
	private int tamanho;
	private int dados[];
	
	
	public Fila (int c) {
		dados = new int	[c];
		tamanho = 0;
	}
	
	public boolean cheia() {
		
		return dados.length == tamanho;
	}
	
	public boolean vazia() {
		
		return tamanho == 0;
	}
	
	public void adiciona (int e) {
		if(cheia()){
			System.err.println("Erro. Fila Cheia");
	
	    }else {
	    	dados[tamanho++] = e;
	    }
		
	
	}
	
	public int remove() {
		 int r = -1;
				 
		if(vazia()) {
			System.err.println("Erro. Fila Vazia");
		}else {
			
			r = dados[0];
			for (int i=0; i<tamanho-1; i++) {
				dados[i] = dados[i+1];
			}
			
			tamanho --;
		}
		
		return r;
	}
	
	public int obterPrimeiro(){
		int l = 0;
		
		if(vazia()) {
			System.err.println("Erro. Fila Vazia");
		}else {
			l = dados[0];
		}
		
		return l;
	}
	
	public int obterUltimo() {
		int j = 0;
		
		if(vazia()) {
			System.err.println("Erro. Fila Vazia");
		}else {
			
			j = dados[tamanho -1];
				
		}
		return j;
	}
	
	public void exibir() {
		
		if(vazia()) {
			System.err.println("Erro. Fila Vazia");
		}else {
          System.out.println("\n Fila:");
          for(int i=0; i<tamanho; i++) {
        	  System.out.printf("|%d|", dados[i]);
          }
          
          System.out.print("\n");
		
				
		}
		
		
	}

}
 

E esse é outra classe teste fila: 

import java.util.Scanner;
import java.util.LinkedList;
import java.util.ArrayList;


public class testeFila {
	
	public static void main(String[] args) {
		
		Fila fila;
		Scanner ler = new Scanner(System.in);
		int opcao, k, e, removido ;
	
		
		String msg =  "1 - Adicionar\n "
		              +"2 - Remover\n"
		              +"3 - Obter o Primeiro\n"
		              +"4 - Obter Ultimo\n"
		              +"5 - Exibir a Fila\n"
		              +"6 - Sair\n\n";
		
		
		
		System.out.println("Tamanho da Fila: ");
		k = ler.nextInt();
		fila = new Fila(k);
		
		do {
			
			System.out.println(msg);
			opcao = ler.nextInt();
			
			switch (opcao) {
			case 1:
				System.out.print("Informe o elemento da Lista");
				e = ler.nextInt();
				fila.adiciona(e);	
				break;
				
			case 2:
				removido = fila.remove();
				System.out.println("Elemento da Lista Removido" +removido);
				e = ler.nextInt();
				fila.adiciona(e);
				break;
				
			case 3:
				System.out.println("\nPrimeiro"+ fila.obterPrimeiro());
				break;
				
			case 4:
				System.out.println("\nPrimeiro"+ fila.obterUltimo());
				break;
				
			case 5:
				fila.exibir();	
				break;

			}
								
		}while(opcao !=6);
		
	
	}


}

 

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...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!