Comment imprimer un seul mot d'une entrée utilisateur

De Ouzan:

Comment puis-je imprimer un seul mot sur une entrée utilisateur en Java? exemple: entrée utilisateur: « Nous aimons maman, elle est le meilleur ». le programme suppose d'imprimer « maman » à cause de premier et dernier caractères sont les mêmes. mon code n'imprime rien à la fin. Voici mon code:

      Scanner s = new Scanner(System.in);
        System.out.println("Please enter a Sentence");
        String input=s.nextLine();
        String builderString=" ";
        for(int i=0,j=0;i<input.length();i++){
            if(input.charAt(i)==' '){
                j=i+1; //upper the value of J if there is space (J will always check first char)
                if (input.charAt(j)==input.charAt(i)&&j<i) {//an if statement to check for match chars.
                        builderString=" "+input.charAt(i);// insert the char into a new string to print it in the console.
                    }
                }
            }
        }
        System.out.println(builderString);
    }
}
Nicolas:

Plutôt que d'analyser toutes les lettres de la chaîne, vous pouvez diviser votre entrée dans un tableau de mots et de vérifier chaque mot individuellement.

Vous pouvez garder votre boucle , mais il vous suffit de vérifier si le chart at 0est le même que celui deword.length() - 1

Voici un exemple de travail. S'il vous plaît noter que j'ai enlever la partie du scanner pour le faire fonctionner dans la cour de récréation j'utilise.

// This would be de equivalent of your scanner
String input = "We love mom she is the best";


String[] words = input.split(" ");
String output = "";
for(int i=0;i<words.length; i++){
   String currentWord = words[i];
   if(currentWord.charAt(0) == currentWord.charAt(currentWord.length() -1)) {
       output = currentWord;
    }
}   

System.out.println(output);   

Vous n'avez pas besoin de votre jvariable de plus.

Vous pouvez le tester ici

Je suppose que tu aimes

Origine http://10.200.1.11:23101/article/api/json?id=478718&siteId=1
conseillé
Classement