Exercício metodos

Galera boa noite,
Tenho um exercício muito simples para fazer só que não está dando certo.
Faça um programa em Java que leia um conjunto com 20 elementos reais e calcule a diferença entre o maior e o menor elemento existente.
Só que o calculo da diferença não muda fica os valores iniciais declarado no inicio do algoritmo. Ele calcula 0 - 999 e não os valores achados nos métodos.
Quem puder me ajudar vou ficar muito grato.

import java.util.Scanner;
public class Exer_03 {

	public static void main(String[] args) {

		double vet [] = new double [20];
		double maior = 0;
		double menor = 999;

		Preenchervetor(vet);
		Acharvalores(vet, maior, menor);
		Calculardiferenca(maior, menor);

	}

	static void Preenchervetor(double vet[]){
		Scanner in = new Scanner(System.in);
		for(int i=0;i<vet.length;i++){
			System.out.print("Número: ");
			vet[i] = in.nextDouble();
		}
	}

	static void Acharvalores(double vet[],double maior,double menor){
		for(int i=0;i<vet.length;i++){
			if(vet[i]>maior){
				maior = vet[i];
			}else if(vet[i]<menor){
				menor = vet[i];
			}
		}
		System.out.print("Maior: "+maior);
		System.out.print("\nMenor: "+menor);
	}

	static void Calculardiferenca(double maior,double menor){
		double diferenca = 0;
		diferenca = maior - menor;
		System.out.print("\nDiferença: "+diferenca);
	}

}

troque o nextDouble por nextLine

Não funfou.
Acho que tem algo errado na passagem de parâmetros no método, agora o que é eu não sei. :frowning:

O problema é que o seu método calcularDiferenca está pegando o valor do maior e menor que você já tinha atribuido no comeco da classe, e não os valores informados por você na hora a digitação. Dá uma olhada nesse seu método(calcularDiferenca) o problema está aí.

Bom quebrei a cabeça aqui e conseguir resolver o exercício. Valeu aí. Ficou assim:

import java.util.Scanner;
public class Exer_03 {

	public static void main(String[] args) {
		int [] vetor = new int[20];

		preencherVetor(vetor);
		int maior = buscarMaior(vetor);
		System.out.print("Maior número: "+vetor[maior]+"\nPosição: "+maior);
		int menor = buscarMenor(vetor);
		System.out.print("\nMenor número: "+vetor[menor]+"\nPosição: "+menor);
		int diferanca = calcularDiferenca(vetor, maior, menor);
		System.out.print("\nDiferença: "+diferanca);
	}

	static void preencherVetor(int [] v){
		Scanner in =  new Scanner(System.in);
		for (int i=0; i<v.length; i++){
			System.out.print("Número: ");
			v [i] = in.nextInt();
		}
	}

	static int buscarMaior(int [] v){
		int maior=0;
		for (int i=1; i<v.length; i++){
			if (v[i]>v[maior]){
				maior=i;
			}
		}
		return maior;
	}

	static int buscarMenor(int [] v){
		int menor = 0;
		for (int i = 1; i < v.length; i++) {
			if(v[i]<v[menor]){
				menor = i;
			}
		}
		return menor;
	}

	static int calcularDiferenca(int [] v,int maior,int menor){
		int diferenca = 0;
		return diferenca = v[maior] - v[menor];
	}
}