Me ajuda a completar o programa em java

Como faço para informar se o nome que foi digitado é masculino ou feminino, levando em consideração:

  • se o nome terminar com a ou e - nome feminino
  • se o nome terminar com i, o ou u - nome masculino

só consegui lista os nomes em ordem alfabetica, mais não consegui informar se o nome é masculino ou feminino

package Atividade;

import java.util.Scanner;
import java.util.Arrays;

public class Aula {

public static void main(String[] args ) {

    Scanner input = new Scanner(System.in);
    String nome[] = new String[3];

    for(int i = 0; i<nome.length; ++i) {

    System.out.print("Digite o " +(i+1) + " nome: ");
    nome[i] = input.nextLine();

    }

System.out.println(" ");

Arrays.sort(nome);

for (int i=0; i< nome.length; i++){

    System.out.print(nome[i]+"\n");         
}

input.close();

}       

}

substring(string.length() - 1);

Pega a última letra.

if(ultimo_char.equals("a") || ultimo_char.equals("e")){
//female
} else if (ultimo_char.equals("i") || ultimo_char.equals("o") || ultimo_char.equals("u")){
//male
}

Poderá encapsular a lógica que identificará o sexo em um método e depois basta chamá-lo.
Exemplo:

private static String recebeONomeERetornaOSexo(String nome) {
  var sufixosParaNomeFeminino = List.of('a', 'e');
  var sufixosParaNomeMasculino = List.of('i', 'o', 'u');
  var totalDeCaracteres = nome.length();
  var ultimoCaractereDoNome = nome.charAt(totalDeCaracteres - 1);
  var sexo = "Sexo Indefinido";
  if (sufixosParaNomeFeminino.contains(ultimoCaractereDoNome)) {
      sexo = "Feminino";
  } else if (sufixosParaNomeMasculino.contains(ultimoCaractereDoNome)) {
      sexo = "Masculino";
  }
  return sexo;
}