Eccoti la soluzione:
Lo risolto così
Scanner in = new Scanner(System.in);
String line = "";
String parole[];
String parola_max = "";
int max_lettere = 0;
while (in.hasNextLine()) {
line += in.nextLine();
parole = line.split(" ");
for (int i = 0; i < parole.length - 1; i++) {
if (parole[i].length() > parole[i + 1].length()) {
parola_max = parole[i];
}
}
max_lettere = parola_max.length();
System.out.print("La stringa " + parola_max + " è lunga " + max_lettere);
}
---------------------------------------------------------------------------------------------------------------------------
In sostanza un algoritmo che ti permette di trovare la parola più lunga è questo
parole = line.split(" "); // Inizializzo un array in modo che ogni indice contenga una stringa
for (int i = 0; i < parole.length - 1; i++) { // Scorro le parole
if (parole[i].length() > parole[i + 1].length()) { // Controllo che la prima stringa sia
// maggiore di quella successiva
parola_max = parole[i]; // Ricavo la stringa più grande
}
}
max_lettere = parola_max.length(); // Ricavo la lunghezza della stringa più grande