Function type
Les funcions es poden tractar com un tipus de dades.
Introducció
A Funció vas aprendre a declarar funcions amb la paraula clau fun.
Com que les funcions també són tipus de dades les pots desar en variables, passar com a paràmetres a altres funcions, retornar-les com a valor de retorn, etc.
Referenciar una funció
A continuació tens la funció hello:
fun main() {
fun hello(): String {
return "Hello"
}
require(hello() == "Hello")
}En lloc de cridar la funció hello directament, la pots desar en una variable perquè una funció és un objecte com pot ser un 3 o "Hello".
Et pots referir a la funció hello com un valor amb l’operador de referència de funció (::):
fun main() {
fun hello(): String {
return "Hello"
}
val hi = ::hello
require(hi() == "Hello")
}La constant hi té tipus () -> String:
val hi: () -> String = ::helloNo inclous els parèntesis després de hello perquè vols desar la funció en una variable, no pas cridar-la.
Copia el valor de la variable hi a una nova variable hey.
Crida la “funció” hey.
Mostra la solució
fun main() {
fun hello(): String {
return "Hello"
}
val hi = ::hello
val hey = hi
require(hey() == "Hello")
}Estàs llegint una vista prèvia.
Inicia sessió amb Google per llegir la pàgina completa.
Inicia sessió amb GoogleAmb qualsevol compte de Google. Només et demanarem que acceptis les condicions del servei.