Je veux savoir comment faire quoi que ce soit les entrées utilisateur pour ignorer la casse dans ma méthode:
public static void findPatient() {
if (myPatientList.getNumPatients() == 0) {
System.out.println("No patient information is stored.");
}
else {
System.out.print("Enter part of the patient name: ");
String name = sc.next();
sc.nextLine();
System.out.print(myPatientList.showPatients(name));
}
}
Vous devez utiliser la méthode String .toLowerCase()
ou .toUpperCase()
sur l'entrée et la chaîne avec laquelle vous essayez de la faire correspondre.
Exemple:
public static void findPatient() {
System.out.print("Enter part of the patient name: ");
String name = sc.nextLine();
System.out.print(myPatientList.showPatients(name));
}
//the other class
ArrayList<String> patientList;
public void showPatients(String name) {
boolean match = false;
for(matchingname : patientList) {
if (matchingname.toLowerCase.contains(name.toLowerCase())) {
match = true;
}
}
}
Utilisez les méthodes String#toLowerCase()
ou String#equalsIgnoreCase()
Quelques exemples:
String abc = "Abc".toLowerCase();
boolean isAbc = "Abc".equalsIgnoreCase("ABC");
La méthode .equalsIgnoreCase () devrait aider à cela.
Vous ignorez la casse lorsque vous traitez les données, pas lorsque vous les récupérez/les stockez. Si vous souhaitez tout stocker en minuscules, utilisez String # toLowerCase , en majuscules, utilisez String # toUpperCase .
Ensuite, lorsque vous devez le traiter, vous pouvez utiliser des méthodes hors de l'arc, comme String # equalsIgnoreCase (Java.lang.String) . Si rien dans l'API Java Java répond à vos besoins, alors vous devrez écrire votre propre logique.
J'ai également essayé tout le code affiché jusqu'à ce que je découvre celui-ci
if(math.toLowerCase(Locale.ENGLISH));
Ici, quel que soit le caractère, l'entrée utilisateur sera convertie en minuscules.
utilisez la méthode toUpperCase () ou toLowerCase () de la classe String.