Dans Swift, vous pouvez vérifier le type de classe d'un objet en utilisant «is». Comment puis-je l'incorporer dans un bloc «commutateur»?
Je pense que ce n'est pas possible, alors je me demande quelle est la meilleure façon de contourner cela.
class
swift
switch-statement
kingrolo
la source
la source
thing
dans switch` dans aucun descase
s ci-dessus, quelle serait l'utilité icithing
? Je ne l'ai pas vu. Merci.is
" - et puis il ne l'utilise jamais. X)case is Double
dans la réponseMettre en place l'exemple de "case is - case is Int, is String: " operation, où plusieurs cas peuvent être utilisés ensemble pour effectuer la même activité pour les types d'objets similaires. Ici "," séparant les types au cas où fonctionne comme un opérateur OR .
Lien de démonstration
la source
if
n'est probablement pas le meilleur exemple pour prouver votre point.value
est quelque chose qui peut être l' unInt
,Float
,Double
et le traitementFloat
et deDouble
la même manière.Si vous n'avez pas de valeur, n'importe quel objet:
la source
J'aime cette syntaxe:
car il vous donne la possibilité d'étendre rapidement la fonctionnalité, comme ceci:
la source