Итак, добрый день всем.
Я начинаю писать свое самое первое собственное приложение для kotlin через Android Studio, и у меня есть одна проблема, которую я не могу решить. При записи этого кода: (bi используется перед каждой переменной, которая является BigInteger btw.)
if (length == 2) {
val bicombinations: BigInteger = valueOf(bivariations.toLong())
.multiply(bivariations)
}
, это говорит мне, что «бикомбинации» никогда не используются. Тем не менее, я фактически использую его в этой строке здесь:
val biresult: BigInteger = bicombinations.divide(bipcpower)
В этой строке я получаю еще одно сообщение об ошибке / предупреждение для бикомбинаций, "неразрешенная ссылка: бикомбинации"
РЕДАКТИРОВАТЬ: Второе предупреждение теперь звучало так: «Переменные« бикомбинации »должны быть инициализированы». Я знаю, как это исправить при использовании Int или Double или чего-то еще, но поскольку BigIntegers являются значениями val, я просто не могу установить значение для бикомбинаций вне оператор if
РЕДАКТИРОВАТЬ 2: Вот как решается проблема инициализации: Сначала объявите бикомбинации вне ветви if, например:
var bicombinations: BigInteger = ONE
и внутри if ветвь, просто используйте бикомбинации без "val" перед ним и не объявляйте его как BigInteger снова. Спасибо @ Elliot-frisch
Может кто-нибудь сказать мне, что делать? Это действительно помогло бы мне закончить мое приложение!