Como retornar os números pares de um array

public int retornaPar()
{
    int par = 0;
    
    for(int i=0; i<numero.length; i++)
    {
        int QTdpares = 0;
        if(numero[i]%2 == 0)
        {
        QTdpares++;
        int []retorno = {numero[i]};
        }
         
    
    }
   
    return retorno; 
}

o que será que falta??? Já tentei mil coisas…

Desculpe ser chato, mas o principal que está faltando é definir bem o problema.

No título vc dizia que queria retornar as vogais (editei depois de ver a mensagem abaixo). Mas pelo código, vc está contando a quantidade de números pares (que não tem nada a ver com letras), mas também parece que tentou retornar um array com os números pares (ou seja, não é só a quantidade de números pares, mas também quais são esses números).

Enfim, o que é pra fazer exatamente?

public int retornaPar()
{
  int par =  numero.length;        
    for(int i=0; i<numero.length; i++)
    {
        if(numero[i]%2 == 0)
        {
        par++;
        par = numero[i];
    
        }

    }
   
    return par; 
}

// Perdão a falta de entendimento, agora ele está pegando, porém sobrepõe… Se por exemplo eu digitar {0,2,68,4}, ao invés dele printar todos porque são pares, ele printa apenas o último, no caso o 4…

Só pra confirmar, é Java, né?

Bom, não ficou claro de onde vem o array de números, mas enfim, a variável par sempre guarda somente o último número encontrado. Se quer guardar todos, tem que usar outro array:

import java.util.Arrays; // usar este import

...
public int[] retornaPares(int[] numeros) { // mudei para receber o array como parâmetro
    // inicialmente, pares tem o mesmo tamanho do array numeros (pois todos podem ser pares)
    int[] pares = new int[numeros.length];
    int i = 0;
    for (int n : numeros) {
        if (n % 2 == 0) { // achei um número par
            pares[i] = n;
            i++;
        }
    }
    // no final, tenho que "diminuir" o array, para que não fique elementos sobrando
    return Arrays.copyOf(pares, i);
}

Como o array pares pode acabar tendo menos números que o array original, no final temos que usar Arrays.copyOf para que ele crie outro array com o tamanho indicado (senão pares ficaria com elementos “sobrando”).

Exemplo:

int[] numeros = {1, 2, 3, 4, 5, 6, 7, 8};
int[] pares = retornaPares(numeros);

System.out.println("Quantidade de números pares encontrados: " + pares.length);
for (int n : pares) {
    System.out.println(n);
}

Daria para usar List em vez de um array, já que listas não têm tamanho fixo e podem aumentar sob demanda. Dê uma olhada na documentação.