Analisar codigo

2 respostas
J
public class Exemplo{
public static int metodo(int [] v, int n){
  int i=0;
  int x=0;

  while(i<v.length && x<n){
       x+=v[i];
       i++;
    }

return x;
     }
}
int []a={9,2,7,6,4,2,3};

boolean y;

y=Exemplo.metodo(a,2);

Boas, estava vendo isto e fiquei com um pouco confuso com o código, qual vai ser o valor retornado e guardado no y?

Obrgado aí…

2 Respostas

GuilhermeKFreitas

Estranho esse código ai, hein !

O método retorna um int, mas tá atribuindo o retorno num boolean ?

Natalia_Lima

Bom, vamos lá... Primeiro que esse código não vai funcionar, ele nem vai compilar...

Na linha abaixo teremos um erro, pois o método da classe Exemplo retorna um número inteiro. Já o y está aguardando um boolean
boolean y;
y=Exemplo.metodo(a,2);
Agora, ajustando o exemplo para o y receber um int, o y guardaria o valor 9.
public class ExecutaExemplo {

	public static void main(String[] args) {
		int []a={9,2,7,6,4,2,3};
		inty;
		y = metodo(a,2);
	}
	
	public static int metodo(int [] v, int n){
		  int i=0;
		  int x=0;

		  while(i<v.length && x<n){
		       x+=v[i];
		       i++;
		    }

		return x;
     }

}
Criado 28 de janeiro de 2011
Ultima resposta 29 de jan. de 2011
Respostas 2
Participantes 3