Ajudinha no trabalho... [Resolvido]

Bom gente…
dou novo aqui e esse é meu primeiro post…
Como eu não estou conseguindo achar o erro vou postar o código todo pra ver se alguem poderia me ajudar…
Bom…eu tenho que fazer um trabalho pra faculdade que lê os dados de uma unidade de consumo de energia elétrica e retorna a tarifa do usuário…
bem simples mesmo…
O problema que eu estou tendo é que na hora que eu chamo “uc.leituraValida()” não muda nada do que o programa já fazia antes de implementação dessa função…
Tipo mesmo se eu digitar algum numero maior que 9999 ele não mostra o erro e se eu digitar menor ele sai do programa mais ainda assim realiza o calculo antes…
Se alguem puder ajudar…
Vlw!!!


import java.util.Scanner;


public class UnidadeConsumidora {

	int rodaRelogio(int atual, int anterior){
		int total;
		total = (9999 - anterior) + atual; 
		return total;
	}
	
	int leitura(int atual, int anterior){
		int total;
		total = atual - anterior;
		return total;
	}
	
	boolean leituraValida(int leitura){
		boolean resp = false;
		
		if((leitura >= 0000)||(leitura <= 9999)){
			resp = true;
		}
		return resp;
	}
	
	public static void main(String[] args) {
		
			Scanner in = new Scanner(System.in);
			UnidadeConsumidora uc = new UnidadeConsumidora();
			
			double total;
			int sai = 1;
			int leituraAtual = 0, leituraAnterior = 0;
			int ucCodigo = 0;
			String ucNomeProprietario = null, ucEndereco = null;
			boolean resp = false;
			boolean primeiraLeitura = false;
			
			do{
			
			System.out.println();
			System.out.println();
			System.out.println();
			System.out.println();
			System.out.println("---------- LEITURA DO CONSUMO DE ENERGIA----------");   
			System.out.println("1. INSERIR DADOS DA UNIDADE");
			System.out.println("2. INSERIR LEITURA");
			System.out.println("3. SAIR");
			String input = in.next();          
			int x = Integer.parseInt(input);
			System.out.println();
						
		    switch (x){
		    	
		    	case 1:{
		    		
		    		System.out.print("Digite o codigo da unidade consumidora: ");
		    		String codigo = in.next();
		    		ucCodigo = Integer.parseInt(codigo);
		    		System.out.println();
		    		System.out.print("Digite o nome do proprietario da unidade consumidora: ");
		    		ucNomeProprietario = in.next();
		    		System.out.println();
		    		System.out.print("Digite o endereco da unidade consumidora: ");
		    		ucEndereco = in.next();
		    		System.out.println();
		    		resp = true;
		    		primeiraLeitura = true;
		    	}         
		        case 2:{
		            if(resp == false){
		            	System.out.println("Necessario inserir dados da unidade primeiro");
		            	break;
		            }
		            else{
		            	System.out.println("Unidade:            "+ucCodigo);
		            	System.out.println("Proprietario:       "+ucNomeProprietario);
		            	System.out.println("Endereco:           "+ucEndereco);
		            	System.out.println("Tarifa(KW/h):       R$0,34");
		            
		            if(primeiraLeitura == true){
		            	System.out.print("Digite a primeira leitura: ");
			    		String leitura = in.next();
			    		leituraAnterior = Integer.parseInt(leitura);
			    		
			    		if(uc.leituraValida(leituraAnterior)){
			    			primeiraLeitura = false;
			    		}
			    		else
			    			System.out.println("Leitura fora do padrão(0000 - 9999)");
		            }
		            if(resp == true){
		            	do{
		            		System.out.print("Digite a leitura: ");
				    		String leitura = in.next();
				    		leituraAtual = Integer.parseInt(leitura);
				    		
				    		if(uc.leituraValida(leituraAtual)){
				    			
				    		if(leituraAtual < leituraAnterior){
				    			System.out.println("Leitura Anterior:   "+leituraAnterior);
				    			System.out.println("Leitura Atual:      "+leituraAtual);
				    			System.out.println("Consumo      :      "+uc.rodaRelogio(leituraAtual, leituraAnterior));
				    			total = (uc.rodaRelogio(leituraAtual, leituraAnterior) * 0.34);
				    			System.out.println("Valor da Tarifa:    R$"+total);
				    			System.out.println();
				    			leituraAnterior = leituraAtual;
				    			
				    		}
				    		else{
				    			System.out.println("Leitura Anterior:   "+leituraAnterior);
				    			System.out.println("Leitura Atual:      "+leituraAtual);
				    			System.out.println("Consumo      :      "+uc.leitura(leituraAtual, leituraAnterior));
				    			total = (uc.leitura(leituraAtual, leituraAnterior) * 0.34);
				    			System.out.println("Valor da Tarifa:    R$"+total);
				    			System.out.println();
				    			leituraAnterior = leituraAtual;
				    		}
				    		}
				    		else
				    			System.out.println("Leitura fora do padrão(0000 - 9999)");
				    			
				    			
				    		
		            	}while(leituraAtual >= 0);
		            }
		            }
		        }
		        case 3:{
		        	System.out.println("Obrigado por utilizar o programa");
		        	System.out.println("Desenvolvido por:");
		        	System.out.println("Bruno Lopes Salustiano - RA 1001792170");
		        	System.out.println("Douglas Olimpio COsta  - RA 1061128681");
		        	System.out.println("Eirik Zadra Pinto      - RA 1094141901");
		        	System.out.println();
		            sai = 0;
		            break;
		        }         
		    } 
		    }while (sai != 0);
	}
}

Em 1° lugar no java não temos função e sim métodos.

Em 2° lugar, tem uma coisa errada aqui: if ((leitura >= 0000) || (leitura <= 9999)) E é por isso que não acontece nada.

Se um número for maior ou igual a 0000 ou menor igual a 9999. Todo número positivo é maior ou igual a zero então seu segundo teste nem é executado.

Seu erro é lógico e bem simples.

Desculpa ae por não conseguir diferenciar função de métodos…
Deve ser porque eu estava acostumado a programar em C e tiva umas 4 aulas de JAVA até agora…
Mais futuramente eu aprendo…
e obrigado pela ajuda…

[quote=KurinskLavinsk]Desculpa ae por não conseguir diferenciar função de métodos…
Deve ser porque eu estava acostumado a programar em C e tiva umas 4 aulas de JAVA até agora…
Mais futuramente eu aprendo…
e obrigado pela ajuda…[/quote]

Blz, eu comecei com pascal e delphi e no começo em java ficava sem saber como me referenciar também.

Entendeu onde errou no IF?

Entendi sim…e agora tah funfando…
Valew!!!

[quote=KurinskLavinsk]Entendi sim…e agora tah funfando…
Valew!!![/quote]

Blz, faz o seguinte então. É padrão aqui no blog fazer isso quando você resolveu sua dúvida.

Clica no botão editar do seu 1° post, onde descreveu a dúvida. Depois ao lado do titulo você escreve [Resolvido] e salva.

T+

E para encapsular? não consegui