J'ai fait de l'exercice. Écrivez un programme Java qui amène l'utilisateur à fournir un seul caractère de l'alphabet. Imprimer la voyelle de Consonant, en fonction de l'entrée de l'utilisateur. Si l'entrée de l'utilisateur n'est pas une lettre (entre a et z ou A et Z), ou est une chaîne de longueur> 1, imprimez un message d'erreur. Et c'est une réponse:Ne doit pas input.charAt (0) retourner une chaîne? Pourquoi input.charAt (0)> = int fonctionne?
import java.util.Scanner;
public class Exercise8 {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.print("Input a alphabet: ");
String input = in.next().toLowerCase();
boolean uppercase = input.charAt(0) >= 65 && input.charAt(0) <= 90;
boolean lowercase = input.charAt(0) >= 97 && input.charAt(0) <= 122;
boolean vowels = input.equals("a") || input.equals("e") || input.equals("i")
|| input.equals("o") || input.equals("u");
if (input.length() > 1)
{
System.out.println("Error. Not a single character.");
}
else if (!(uppercase || lowercase))
{
System.out.println("Error. Not a letter. Enter uppercase or lowercase letter.");
}
else if (vowels)
{
System.out.println("Input letter is Vowel");
}
else
{`enter code here`
System.out.println("Input letter is Consonant");
}
}
}
Comment se fait que,
boolean uppercase = input.charAt(0) >= 65 && input.charAt(0) <= 90;
œuvres? Ne devrait pas input.charAt()
retourner une chaîne?
Aussi, pourquoi est-il pour la distinction majuscules et minuscules dans la seconde moitié d'un code si quelqu'un a utilisé
toLowerCase();
déjà?
Pourquoi * should * 'charAt' retourner une chaîne? – chrylis
lire à propos de acsii et char –
'charAt()' retourne un 'char' qui, à mon avis, a du sens. – Magnilex