Ir ao conteúdo

Posts recomendados

Postado

class ImpressorDeEquacao {

   public String somar(int a, int b) { return a + "+" + b; }

   public String subtrair(int a, int b) { return a + "-" + b; }

}

 

Adapte a classe para aceitar parâmetros de quaisquer tipos de números além dos números inteiros. 

  • Obrigado 1
  • mês depois...
Postado

Como assim? você quis  dizer que é pra fzr os parâmetros receberem além dos valores inteiros, valores decimais por exemplo ?

 

da uma lida no tipo: double

 

public String somar(double a, double b) {
        return a + "+" + b;
    }

    public String subtrair(double a, double b) {
        return a + "-" + b;
    }

  • Curtir 1
Postado

Crie dentro da classe métodos idênticos, mudando somente os tipos de dados de int para double. A sobrecarga de métodos será realizada e permitirá que ambas versões do código funcionem em casos diferentes de entrada.

 

 

 

Espero ter ajudado GbhmuXl.gif.

Postado

Partindo para algo mais avançado, pode-se usar Generics. Nesse caso, sua classe pode ser mais ou menos assim:

public class Calculadora<T extends Number> {
  
  public double somar(T valor1, T valor2) {
    return valor1.doubleValue() + valor2.doubleValue();
  }
}

 

Para usar, faça assim:

public class Main {  
  
  public static void main(String[] args) { 
    Calculadora<Integer> calculadora = new Calculadora<>();
    double resultado = calculadora.somar(1, 2);
  } 
}

 

No exemplo acima usei a classe Integer, porém pode-se usar qualquer classe que estenda a classe Number, ou seja, qualquer classe Wrapper de tipo numérico pode ser usada.

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