I want to create a program that reads the name and age of a person and compares the ages and finally shows the name of the oldest person. My rationale was to compare which is the largest and return the index of the position of the array . But the return is always 0. And also I do not know how to get the return and shows the contents of the array in the position.
package Lista1;
import java.util.Scanner;
public class Pessoa {
private static String nome;
private static int idade;
public static int comparaIdade(Pessoa[] pessoa){
int maior=0;
int ind = 0;
for(int i = 0; i<3; i++){
if(pessoa[i].idade>maior){
maior=pessoa[i].idade;
ind=i;
}
}
return ind;
}
public static void main(String[] args){
Pessoa[] pessoa = new Pessoa[3];
Scanner input = new Scanner(System.in);
for(int i = 0; i<3; i++){
System.out.println("Digite o nome da pessoa: ");
pessoa[i].nome = input.nextLine();
System.out.println("Digite a idade da pessoa: ");
pessoa[i].idade = input.nextInt();
input.nextLine();
}
System.out.printf("Nome da pessoa mais velha: %d", comparaIdade(pessoa));
}
}