23
def multiplyStringNumericChars(list: String): Int = {
var product = 1;
println(s"The actual thing + $list")
list.foreach(x => { println(x.toInt);
product = product * x.toInt;
});
product;
};
12345
のような文字列を受け取り、1 * 2 * 3 * 4 * 5
の結果を返す関数です。しかし、私は戻ってくることは意味をなさない。 Char
からInt
への暗黙の変換は実際に何を返すのですか?スカラーcharからintへの変換
すべての値に48
を追加しているようです。代わりにproduct = product * (x.toInt - 48)
を実行した場合、結果は正しいです。
言ったように対応する文字コード。 x.asDigitを使用して数字に対応する整数を取得します(これは、文字を含めると、基数36まで有効です)。 –