kotlin - 如何在 kotlin 中将数字更改为负数

标签 kotlin numbers

absolutes 变量代表一个数字。 当“负数”为“正数”时,该符号尝试将“-”转换为数字“++”。 我们将解决添加我们更改的所有变量的任务。

a[i] = 绝对值[i].unaryMinus()

在这句话中, 引起原因:java.lang.ArrayIndexOutOfBoundsException: length=1;索引=1

出现错误。

我能知道哪一部分是错误的吗?

    val absolutes = intArrayOf(4,7,12)
    val sign = arrayOf(true,false,true)

    val a = intArrayOf(0)

    for (i in absolutes.indices){

        if (!sign[i]) {
            a[i] = absolutes[i].unaryMinus()
        }
    }

    val result = a.sum()

    Log.d(logTag, "onCreate is called result = $result")

最佳答案

来自 Kotlin 标准库的

intArrayOf "Returns an array containing the specified Int numbers" .

因此,a 的值是 size 1 的 IntArray。 您不能将值分配给 lastIndex 之上的索引,在本例中为 0。

我假设您的目标是创建一个与输入大小相同的 IntArray,默认情况下用零填充。

val a = IntArray(absolutes.size)

关于kotlin - 如何在 kotlin 中将数字更改为负数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70658338/

相关文章:

android - kotlin 编译器返回此类警告

android - 使用 OkHttp 客户端执行原始 graphQL 查询

android - 在 APK META-INF/library_release.kotlin_module 中复制的重复文件

java - n 小于 n 平方根的因数的个数

c++ - 随机生成器帮助 C++

android - Kotlin - 如何更改语言环境

java - Android Room 和继承。错误: Multiple fields have the same columnName

numbers - 如何去掉 LATEX 报表文档类中节编号中的零?

jQuery Cycle - 这个 jquery 脚本有什么问题?

angular - Angular 2 中的小数管道 - 仅逗号,无小数位