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;
};
Bu 12345
gibi bir String alır ve 1 * 2 * 3 * 4 * 5
sonucunu dönmelidir bir işlevdir int Char. Ancak, geri döneceğim hiçbir şey ifade etmiyor. Gerçekte Char
ile Int
arasındaki örtük dönüşüm nedir?Scala dönüşüme
Tüm değerlere 48
ekleniyor gibi görünüyor. Bunun yerine product = product * (x.toInt - 48)
yapsam sonuçlar doğrudur.
söylediği gibi karşılık gelen karakter kodu. Bir basamağa karşılık gelen tamsayıyı almak için x.asDigit'i kullanın (harfleri dahil ederseniz bu, 36'ya kadar çalışır). –