Galeraa preciso de uma força aeee

Seguinte, so novo, e to começando agora e to me interessando muitu por java, montei um programa que pega o nome, rg e poltrona que o usuário quer sentar e grava num arquivo txt…té aew, blz o programa ta rodando normal, tudo certo…soh que são 44 lugares e não consigo fazer esta consistência na poltrona para que não aceite o valor digitado para poltrona seja maior que 44…algum pode me dar uma idéia de como fazer issu mais ou menos, ja tentei de varios jeitos mas não consigo…

segue a classe…

import java.io.*;
public class Passageiro{

    // Atributos   
    private String nome, rg;   
    private int poltrona;   
       
    public Passageiro(){}   
       
    public Passageiro(String nome, String rg, int poltrona){   
        this.nome     = nome;   
        this.rg       = rg;   
        this.poltrona = poltrona;   
    }   

    public String getNome() {   
        return nome;   
    }   
       
    public String getRg() {   
         return rg;   
    }   

    public int getPoltrona() {   
         return poltrona;   
    }   

    public void setNome(String aux){
    	if(aux != null){
    		if(aux.trim()!="")
    			this.nome = aux;   
    	}
    }   
       
    public void setRg(String aux) {   
         if(aux != null){
    		if(aux.trim()!="")
    			this.rg = aux;   
    	}
    	      	   	  
    }   

    public void setPoltrona(int aux){
    	if(aux > 0){
    		this.poltrona = aux;
    	}
    	
    	
    }
    
    public  void insereNoArquivo(){
    	
    	File f= new File("C:\\Trab Interdiciplinar","arq.txt");

			try{
				FileWriter fw = new FileWriter(f , true);
		
				BufferedWriter escrita = new BufferedWriter(fw);

				escrita.write(nome + " | ");
				escrita.write(rg + " | ");
				escrita.write(poltrona);

				escrita.newLine();
		
				escrita.close();
			}
			catch(IOException ex){
				System.out.println("\n Prolemas com o arquivo");
		}
	}
	
	// criar um metodo para imprimir os dados gravado no arquivo
	public void imprime(){
		
	}

}

Agora segue o programa que puxa os métodas da classe passageiro…

import javax.swing.JOptionPane;
import java.io.*;
public class UsaPassageiro{

static Passageiro[] aPassageiros = new Passageiro[5];    
      
public static void main(String args[]){   
    
    // loop para pegar todos os passageiros   
    for(int i = 0; i < aPassageiros.length; i++){ 
        String nome = JOptionPane.showInputDialog("Digite o nome");               
        String rg = JOptionPane.showInputDialog("Digite o rg");   
           
        int poltrona = 0; // inicio como poltrona = 0   
        while (poltrona == 0 || !poltronaLivre(poltrona)) // fico pedindo a poltrona até que ela seja diferente de 0 e desocupada   
            poltrona = Integer.parseInt(JOptionPane.showInputDialog("Digite a poltrona"));     
           
        // crio o objeto passageiro (se preferir pode mudar o construtor pra já passar os parâmetros)   
        Passageiro p = new Passageiro(nome, rg, poltrona); 
      
      	// adiciono o passageiro na minha lista de passageiros   
      	aPassageiros[i] = p;
     	Passageiro obj = new Passageiro(nome, rg, poltrona);   
	  	obj.insereNoArquivo(); 

    }   
    
    /*    
    // loop para imprimir todos os passageiros   
    for(int i=0;i<aPassageiros.length;i++){   
        System.out.println("Nome: " + aPassageiros[i].getNome());   
        System.out.println("Rg: " + aPassageiros[i].getRg());   
        System.out.println("Nome: " + aPassageiros[i].getPoltrona()); 
      
    } */
     	  			
}   
   
/**  
 * Verifico se a poltrona de número p passada está livre, ou seja, se ela não pertence a nenhum outro passageiro  
 * ainda.  
 * @param p  
 * @return  
 */   
private static boolean poltronaLivre(int p){   
       
    for(int i = 0; i < aPassageiros.length; i++){   
        // como já configurei que o array terá 3 posições, ele percorre até 3, só quem nem sempre tem um passageiro na posição   
        // do array, a posição pode estar null, por isso tava dando aquele erro.   
        if ((aPassageiros[i] != null) && (p == aPassageiros[i].getPoltrona())){   
            //System.out.println("Poltrona ocupada!!!");   
            JOptionPane.showMessageDialog(null,"Poltrona ocupada");
            
            return false;   
        }   
    }   
    
    return true;   
}

}

Oi, bem-vindo ao GUJ!

Não use .txt como se fosse um banco de dados. É o caminho para um código longo, trabalhoso, cheio de erros e pouco eficiente. Informe-se sobre JDBC e bancos de dados, tem tutoriais sobre ele no GUJ (veja em ordem):
http://www.guj.com.br/java.tutorial.artigo.7.1.guj
http://www.guj.com.br/java.tutorial.artigo.115.1.guj
http://www.guj.com.br/java.tutorial.artigo.174.1.guj

Depois… sempre que for postar códigos, use a tag code. Assim fica mais fácil para a gente te ajudar. Se vc tem dúvidas de como usa-la, veja o link:
http://www.guj.com.br/posts/list/50115.java

public void setPoltrona(int aux){ if(aux > 0){ this.poltrona = aux; }

este mew problema…creiu que seja aqui onde crio a condição da poltrona, mas não vonsigo faze-la, podem me ajudar…

Faça as validações com exceções:

[code]public void setPoltrona(int poltrona){
if(poltrona < 0 || poltrona > 44) {
throw new IllegalArgumentException("A poltrona deve estar entre 0 e 44!");
}

//Se passou pela validação
this.poltrona = poltrona;

}[/code]

Isso vale para a classe de negócio. Na sua tela, procure fazer uma interface que impessa o usuário de colocar um valor inválido. Como usar um ComboBox só com as poltronas disponíveis, por exemplo.