我在scala中将字符串转换为整数时遇到麻烦。例如,我有一个程序,要求用户输入数字“五”,并将其乘以另一个整数。但是,当我这样做时,数字“五”没有任何数值
我尝试使用数字数组
val num = Array("one", "two", "three")
val intValue:Int = num.indexOf("two") + 1
println(intValue)
答案 0 :(得分:2)
您还可以创建键/值对的映射并进行查找。
val list = Map("five" -> 5,"six"->6)
list.get("five")
ans : Option[Int] = Some(5)
答案 1 :(得分:1)
您可以使用类似的内容:
variable match{
case "one" => 1
case "five" => 5
case _ => 0
}
但是您需要为每个案例编写程序
答案 2 :(得分:1)
您可以这样做:
div
答案 3 :(得分:1)
使用icu4j
libraryDependencies += "com.ibm.icu" % "icu4j" % "64.2"
val locale = new ULocale("En")
val formatter = new RuleBasedNumberFormat(locale, RuleBasedNumberFormat.SPELLOUT)
println(formatter.parse("fourteen"))
输出
14
答案 4 :(得分:0)
使用PartialFunction [String,Int]并提升:
val pf: PartialFunction[String, Int] = {
case "one" => 1
case "two" => 2
case "three" => 3
}
pf.lift("two").foreach(println)