2017-07-28 3 views
2

En ce moment, j'apprends Kotlin, dans ce guide je cours dans ces deux méthodes, l'une avec l'autre Unit et on n'a pasQu'est-ce que l'unité objet dans Kotlin

Méthode avec unit

fun printSum(a: Int, b: Int): Unit { 
    println("sum of $a and $b is ${a + b}") 
} 

Méthode sans Unit

fun printSum(a: Int, b: Int) { 
    println("sum of $a and $b is ${a + b}") 
} 

Ma question est, ce qui est Unit font réellement? est-ce quelque chose comme void en Java? si c'est comme void pourquoi l'un de la méthode ci-dessus n'a pas Unit fonctionner très bien.

lequel dois-je utiliser quand je veux que ma méthode ne renvoie rien? Et aussi quand le meilleur moment pour utiliser Unit.

quelqu'un peut expliquer? parce que ça me dérange vraiment. Merci d'avance.

Répondre

0

Oui .it est clairement mentionné dans le site Web ainsi qu'à la source GitHub que

object Unit Le type avec une seule valeur: l'objet de l'unité. Ce type correspond au type vide dans Java.

également dans le dépôt,

/** * Le type avec une seule valeur: l'objet de l'unité. Ce type correspond au type void en Java. */

When to use it?

+0

alors quelle est la différence avec la méthode sans 'unit', ils En tant que commodité Kotlin vous permet à la fois de ne rien renvoyer –

+2

à omettez de déclarer le type de retour lorsque le type de retour est l'unité - voir https://kotlinlang.org/docs/reference/functions.html#unit-returning-functions –

+1

@GustiArya Non, c'est spécifiquement ** ne ** rien renvoyer. L'unité est un objet réel. – EJoshuaS