2016-06-07 17 views
0

我试图设置了一些成类,像这样我setNumber没有与我所期待的

public class Governador extends Candidato{ 
    private int numero; 
    private static int limite_inferior = 77; 

    public Governador(String nome, String partido, int numero) { 
     super(nome, partido); 
     this.numero = numero; 
    } 

    public int getNumero() { 
     return numero; 
    } 

    public void setNumero(int numero) { 
     if (numero > 99 || numero < limite_inferior) { 
      this.numero = limite_inferior; 
      limite_inferior++; 
     } 
     this.numero = numero; 
    } 
} 

但是,当我得到一个数字,如42,它不会打开相应的变化进入77像我想要的。这可能很容易,但我现在已经失明了。

回答

4

你的问题很简单。你是总是设置输入号码。

if (numero > 99 || numero < limite_inferior) { 
    this.numero = limite_inferior; 
    limite_inferior++; 
} 

this.numero = numero; //HERE 

无论是否进入IF,它都会设置给定的数字。因此,添加其他条件,如:

if (numero > 99 || numero < limite_inferior) { 
    this.numero = limite_inferior; 
    limite_inferior++; 
}else{ 
    this.numero = numero; 
} 
+1

或移动if语句之上 –

+0

我以前试过,但它也没有工作。 –

+0

然后,你调用这个类或'Candidato'类的代码肯定有问题,可能是一个重载的代码。张贴在你的问题上,我会看看是否有更多的东西。对于你显示的代码,以及你所说的这个修复就足够了。 –

相关问题