Je n'ai pas de problème avec la conversion d'une chaîne en un entier dans Scala. Par exemple, j'ai un programme qui oblige l'utilisateur à entrer dans un numéro "cinq" et de multiplier que par un autre int. Cependant, lorsque je fais que le nombre "cinq" ne tient pas une valeur numérique
ive essayé d'utiliser un tableau de chiffres p>
5 Réponses :
Vous pouvez utiliser quelque chose comme:
variable match{
case "one" => 1
case "five" => 5
case _ => 0
}
Vous pouvez également créer une carte des paires de touches / valeur et de rechercher.
Utilisez partiallyfunction [String, int] et levage:
val pf: PartialFunction[String, Int] = {
case "one" => 1
case "two" => 2
case "three" => 3
}
pf.lift("two").foreach(println)
Vous pouvez faire:
val num = Array("one", "two", "three")
val stringToInt = num.zipWithIndex.toMap.mapValues(_ + 1)
// Map("one" -> 1, "two" -> 2, "three" -> 3)
val two: Int = stringToInt("two")
Utilisation de l'ICU4J
14
Je ne comprends pas vraiment ce que vous voulez dire par le nombre "cinq" ne tient aucune valeur.
J'essaie d'obtenir le numéro "cinq" pour contenir une valeur numérique
Mais qu'est-ce que "cinq"? Est-ce une variable?
Oui. En bref, parce que mon code est trop long pour poster, j'ai une simulation de panier. L'utilisateur doit entrer dans le nom, le prix et la quantité de ce qu'ils veulent ajouter au panier. Pour la quantité, le code doit prendre en charge une entrée de chaîne. Par exemple: "Nom: Chaussures, Quantité: Cinq, Prix: 3" Le total devrait avoir 15 ans, mais je reçois à la place je reçois zéro car la quantité ne tenait pas la valeur numérique de "5"
Vous ne pouvez pas spécifier directement une liste déroulante pour la quantité pour prendre un numéro au lieu de S chaîne? De cette façon, vous pouvez éviter toute conversion de cette conversion.
Oui, ce serait beaucoup plus facile, mais pour les exigences de cela, je ne peux pas :(
Oui, donc fondamentalement, vous devez créer une carte
code> avec toutes vos quantités possibles, vous pouvez ainsi le chercher.