Je ne comprends pas pourquoi par ex. la méthode java.security.MessageDigest.digest()
qui est déclarée comme renvoyant byte[]
en Java renvoie un ByteArray
dans Kotlin bien que Kotlin semble généralement appeler byte[]
et Array<Byte>
.Différence entre ByteArray et Array <Byte> dans kotlin
E.g. ce qui suit ne fonctionne pas:
fun main(args : Array<String>) {
val md = java.security.MessageDigest.getInstance("SHA")
if (md == null) throw NullPointerException()
val result : Array<Byte>? = md.digest()
}
incompatibilité Type: Type inférée ByteArray?
mais Array<Byte>?
devrait
Documents courants pour les baies Kotlin: https://kotlinlang.org/docs/reference/basic-types.html#arrays et pour l'interopérabilité avec les baies Java de Kotlin: https://kotlinlang.org/docs/reference/java -interop.html # java-arrays –