0
votes

Comment puis-je comparer deux chaînes pour voir si l'une est supérieure à celle de l'autre

Je travaille sur un jeu de cartes de base. J'ai l'utilisateur shuffle deux cartes et je veux pouvoir savoir si les cartes sont égales ou si l'une est supérieure à celle des autres ou moins que l'autre. Actuellement, je ne peux que dire s'ils sont égaux. xxx


9 commentaires

Vous pouvez comparer des chaînes. Quoi sont exactement dans vos cordes et que signifie "plus grand que"?


Disons que la première étiquette indique 7 et la seconde dit 3. Je veux pouvoir cliquer sur un bouton qui dit que l'étiquette 1 est supérieure puis la étiquette 2.


Sont-ils toujours des nombres, ou peuvent-ils être "a", "k", "q", "j" aussi?


Ce sera toujours des chiffres


Et comment les chiffres sont-ils entrés dans ces étiquettes? Avez-vous eu des INT internes dans votre programme que vous avez attribué aux étiquettes avec quelque chose comme: label1.text = chaîne (carte1) ?


Oui, ce n'est pas le meilleur système actuellement, mais si vous appuyez sur un bouton, il romise 1-10 et que ce qui atterrit jamais, il fait que l'étiquette


Il est possible de convertir la chaîne en arrière en int, mais il est plus facile de garder une trace de l'INT que vous avez généré en premier lieu. Gardez les INT dans une propriété de votre mode de vue, puis comparez simplement l'INTS.


Je suis un peu confus sur la façon dont j'irais ça?


Modifiez votre question pour partager davantage de votre code.


3 Réponses :


0
votes

Peut-être qu'il y a une certaine surveillance ici, mais si je comprends bien correctement, votre solution est assez simple. Un autre si instruction: xxx

ppshein est correct. Si vous parlez de chaînes, vous devriez utiliser compter .


2 commentaires

C'est ce que j'avais supposé que c'était mais je reçois cette erreur "Impossible de convertir la valeur de type" chaîne "? Attendu d'argument de type "uicontentsizecategory" "


Avez-vous essayé la solution de PPShein? si playercard.count> distributeur.count {imprimé ("joueur wins!")}



0
votes

Fondamentalement, vous souhaitez comparer les valeurs entier des champs de texte. Vous devez donc les convertir en entier. (par exemple, "10" à 10)

Vous pouvez faire comme ça xxx

Assurez-vous d'ajouter suffisamment de vérifications de sécurité pour vérifier si la valeur entrée peut être convertie en entier. ou pas.


1 commentaires

Cela ne compilera pas.



0
votes

Vous ne devez pas stocker les valeurs dans votre uicontrol s. Les valeurs doivent être dans des variables qui représentent votre modèle, puis comparez simplement les valeurs de votre modèle.

Je suggérerais de garder les valeurs aléatoires que vous générez comme int , puis comparez-les. Ajout d'observateurs de propriétés ( distset ) à ceux qui vous permettront de définir les étiquettes lorsque cette valeur est définie: xxx


2 commentaires

Je me sens comme si je dois manquer quelque chose. Cela semble exactement ce dont j'ai besoin mais je n'arrive pas à le faire fonctionner. Sa seule montrant moins que peu importe ce que les chiffres changent aussi


Déboguer. Définissez des points d'arrêt et regardez des valeurs ou ajoutez des instructions d'impression pour imprimer les valeurs avant la comparaison.