0
votes

Logique incorrecte en Java

J'essaie d'écrire une déclaration logique qui indique "si NewID n'aurait pas 6 caractères ni newid ne commence pas avec M, P, T, O, alors une erreur.

C'est la déclaration que j'ai jusqu'à présent en utilisant jusqu'à présent java: xxx

un code neufid valide serait: xxx

un code non valide serait: < Pré> xxx


2 commentaires

S'il vous plaît, soyez plus précis sur la question de votre demande!


Avez-vous envisagé des expressions régulières des utilisateurs pour résoudre ce problème?


4 Réponses :


0
votes

Essayez xxx


0 commentaires

1
votes

J'ai écrit un programme de test que vous pouvez utiliser pour tester continuellement en branlant les valeurs: xxx

sortie jusqu'à présent:

aucun problème

aucun problème

problème!

problème!

problème!

aucun problème


0 commentaires

0
votes

La sortie correcte ne va pas en raison du ! code>. Dans votre code,

if ((newID.length() != 6) || !(newID.charAt(0)!='M'&& newID.charAt(0)!='P'&& newID.charAt(0)!='T'&& newID.charAt(0)!='O'))


0 commentaires

1
votes

Dans votre état, vous utilisez && (et) avec ! qui doit être supprimé comme indiqué par @pankaj dans son réponse . Donc, il ressemblerait à: xxx

comme alternative , vous pouvez également utiliser || (ou) condition. Donc, votre condition finale serait la suivante: xxx


Vous pouvez rendre cela plus net avec xxx


0 commentaires