Problema com código

3 respostas
S

Boa tarde a todos, amigos não estou conseguindo corrigir o erro nesse código, da uma mensagem falando main não ativo!

public class Fila

{

private Object[] buffer;

private int maxCount;

private int count;
public Fila()

{

maxCount = 50;

count = 0;
buffer = new Object[maxCount];

}

public void enqueue(Object Item) throws Exception

{

if(count < maxCount)

{

buffer[count] = Item;

count++;

} else

throw new Exception(Fila cheia);

}
public Object dequeue() throws Exception

{

Object res;
if(count > 0)
{
  res = buffer[0];
  
  for(int i = 1; i < count; i++)
    buffer[i -1] = buffer[i];
  count--;
        
  return res;
} else
  throw new Exception("Fila vazia");

}

public int getCount()

{

return count;

}

}

3 Respostas

peczenyj

ok. o seu código compila.

entretanto vc não vai conseguir executar por que não existe um método chamado main.

Eu mudei algumas coisas pq achei q ficava mais bonito mas da uma olhada no método main!

public class Fila
{
	private Object[] buffer;
	private int count;

	public Fila(){
		this(50);
	}

	public Fila(int _max)
	{
		this.count = 0;
		this.buffer = new Object[_max];
	}

	public void enqueue(Object Item) throws Exception
	{
		if(count >= buffer.length)
			throw new Exception("Fila cheia");

		buffer[count] = Item;
		count++;
	}

	public Object dequeue() throws Exception
	{
		if(count <= 0)
			throw new Exception("Fila vazia");

		Object res = buffer[0];

		for(int i = 1; i < buffer.length; i++)
			buffer[i - 1] = buffer[i];

		count--;

		return res;
	}

	public int getCount()
	{
		return buffer.length;
	}

	public static void main(String [] args){
		Fila F = new Fila();

		try {
			F.enqueue("a");
			F.enqueue("b");
			F.enqueue("c");

			System.out.println(F.dequeue());
			System.out.println(F.dequeue());
			System.out.println(F.dequeue());
			System.out.println(F.dequeue()); // este vai dar erro!

		}catch(Exception e){e.printStackTrace();}
	}
}
S

Como insiro ele no código corretamente, obrigado pela atenção!

peczenyj

ai depende do que vc quer fazer, olha o exemplo acima… :wink:

Criado 11 de junho de 2006
Ultima resposta 11 de jun. de 2006
Respostas 3
Participantes 2