相关疑难解决方法(0)

"const"和"val"有什么区别?

我最近读过这个const关键字,我很困惑!我找不到它和const关键字之间的任何区别,我的意思是我们可以使用它们来制作一个不可变的变量,还有什么我不知道的吗?

constants kotlin

231
推荐指数
10
解决办法
3万
查看次数

Kotlin Bytecode - 如何在IntelliJ IDEA中进行分析?

我想看看编译后的字节码,这样我就可以了解它在封面下的工作原理.我正在使用IntelliJ IDEA 15,但找不到查看字节码的方法.我错过了什么?

intellij-idea kotlin android-studio jvm-bytecode

59
推荐指数
2
解决办法
7169
查看次数

Kotlin 中私有静态 final 字段的等价物是什么?

实际上的问题是,哪种方法更好,您使用哪种约定?

例如,为了提高可读性,我们在 Java 类中添加了这个字段:

class Game {

    private static final int MAX_PLAYERS = 10;

    public boolean canWePlay(int playersCount) {
         return playersCount <= MAX_PLAYERS;
    } 

    // getters and setters
}
Run Code Online (Sandbox Code Playgroud)

现在更好的方法是使用伴随对象:

class Game {

    fun canWePlay(playersCount: Int): Boolean {
        return playersCount < MAX_PLAYERS
    }

    companion object {

        val MAX_PLAYERS = 10
    }
}
Run Code Online (Sandbox Code Playgroud)

或和const val课外:

private const val MAX_PLAYERS = 10

class Game {

    fun canWePlay(playersCount: Int): Boolean {
        return playersCount < MAX_PLAYERS
    }
}
Run Code Online (Sandbox Code Playgroud)

或者你使用不同的方法?

另一个问题是,如果我们使用第二个约定,我们应该使用驼峰式大小写还是带下划线的大写?(我正在谈论 Android 代码)。

java android kotlin

7
推荐指数
0
解决办法
1418
查看次数