¿Intenta recuperar la primera palabra más larga de una cadena, donde una oración contiene cadenas de la misma longitud?

Solo necesita dejar de sobrescribir su "palabra más larga" almacenada cuando la longitud es igual a la palabra actual. Reemplazar >=con >en su ifdeclaración debería hacer el truco.

Respuesta 1

Sus nombres de variables son confusos y redundantes. Asumiría que la palabra más larga es la primera, y luego comenzaría el ciclo en la segunda palabra. Y tú quieres >(no >=). Me gusta,

public static String longestWord(String sentence) {
    String[] words = sentence.split("\\s+");
    String longest = words[0];
    for (int i = 1; i < words.length; i++) {
        if (words[i].length() > longest.length()) {
            longest = words[i];
        }
    }
    return longest;
}

o en Java 8+

public static String longestWord(String sentence) {
    return Stream.of(sentence.split("\\s+")).max(
            (a, b) -> Integer.compare(a.length(), b.length())).get();
}
Respuesta: 2

Hola, programé una aplicación de Android, pero algunas partes de la aplicación contienen código nativo de Desktop-Java que se supone que se ejecuta en el escritorio, ahora mismo puedo ejecutarlo en Android Studio y funciona, el ...

Actualmente tengo una aplicación que se conecta a un Terminal Server a través de TCP / IP utilizando una dirección IP y un puerto. ¿Es posible para mí crear una conexión TCP / IP simulada localmente en mi computadora portátil para poder ...

Como estoy experimentando con TestNG usando un curso UDEMY, necesito aclaraciones sobre la parte de dependencia. A continuación tengo un método que iniciará sesión en gmail llamado gmailLogin (). Tengo un método separado que ...

En el proyecto de código abierto JChemPaint, por ejemplo, la GUI se prueba (utilizando el marco FEST) mediante la recopilación de una docena de pruebas individuales cada una en unos pocos archivos Java. El applet solo se inicia ...