FUNCIONES DE ANDROID
Funciona con todo tipo de aplicaciones.
Android ha sido diseñado para poder utilizar todas las aplicaciones que uno se descargue al teléfono y así crear aplicaciones nuevas y más complejas. Por ejemplo, si uno se descarga una aplicación de una página web para su teléfono, podrá usarla para la creación de una nueva aplicación a través de Android. Este es, precisamente, uno de los puntos fuertes del sistema operativo, que no es estanco. No se limita a utilizar las aplicaciones y funciones de serie de un teléfono, sino que permite usar todas aquellas que vayamos incorporando y descargando desde Internet.
como funciona
Android ha sido diseñado para permitir a los usuarios crear distintas aplicaciones aprovechando las distintas características y utilidades de sus teléfonos. Por ejemplo, al crear una utilidad con Android, un usuario podrá usar la función de llamada de su teléfono, o la función de mensajería de texto, la de la cámara de fotos, etc. La idea es que se puedan crear todo tipo de aplicaciones usando todas las funciones del teléfono que se quiera, y combinándolas como se quiera. Además, Android optimiza los recursos internos del teléfono (memoria, hardware, etc.) con el objetivo de que la aplicación funcione de la mejor manera posible.
¿QUÉ ES ANDROID?
Android es un sistema operativo de código abierto para móviles desarrollado por Google y por el grupo Open Handset Alliance, un conglomerado de más de 30 empresas dedicadas al mundo de la telefonía móvil. Partiendo de una serie de aplicaciones y utilidades base, Android permite al usuario crear y compartir aplicaciones completamente nuevas utilizando y maximizando todo el potencial del teléfono móvil.
Puedes construir aplicaciones con todo tipo de datos.
Android permite crear aplicaciones tomando en consideración datos que se obtienen de muchos lugares. Por ejemplo, si se quiere elaborar una nueva aplicación que sirva a modo de biblioteca móvil, Android no sólo tomará en cuenta los nombres de los libros que ya se tengan almacenados en nuestro teléfono, sino que se podrá recurrir a una base de datos que se encuentre en Internet para engrosar los fondos. Pero es más, no hará falta visitar esta base de datos a diario para ver si se han añadido nuevos títulos, Android se encargará de detectar los últimos títulos y de añadirlos automáticamente a la biblioteca.
Construir nuevas aplicaciones es muy fácil.
Android ha sido diseñado para que crear y llevar a la práctica nuevas aplicaciones sea una tarea fácil. Por otra parte, el sistema operativo está pensado para que todas las aplicaciones que se creen se puedan utilizar con mucha facilidad también.
FUNCIONES LOCALES
También es posible declarar funciones dentro de otras funciones. Las funciones locales pueden acceder a las variables declaradas en el mismo ámbito en el que están declaradas o en ámbitos superiores.
fun eliminaPares(numeros: List<Int>): List<Int> {
var resultado: MutableList<Int> = ArrayList()
// Funcion local
fun esPar(numero: Int): Boolean = (numero % 2 == 0)
for (numero in numeros) {
if (!esPar(numero)) {
resultado.add(numero)
}
}
return resultado
}
FUNCIONES MIEMBRO
class Persona(var nombre: String, var edad: Int) {
fun esMayorEdad(): Boolean = edad >= 18
}
fun main(args:Array<String>) {
var alguien = Persona("Luis", 25)
println("¿Es ${alguien.nombre} mayor de edad? ${alguien.esMayorEdad()}")
}
FUNCIONES DE NIVEL SUPERIOR
package com.poi
fun suma(numeroA: Int, numeroB: Int): Int {
return numeroA + numeroB
}
FUNCIONES CON NOTACIÓN INFIX
EJEMPLO
infix fun Int.entre(numero:Int) = this / numero
fun main(args:Array<String>) {
val division = 20 entre 5
println("El resultado de la division es $division")
// El resultado de la division es 4
}
PARÁMETROS CON VALORES POR DEFECTO
Otra de las posibilidades que tenemos con las funciones en Kotlin es indicar valores por defecto para los parámetros.
Si se define un valor por defecto para un parámetro se puede hacer la llamada sin pasar dicho parámetro y en tal caso se utilizara el valor por defecto definido para el parámetro en la función.
Para asignar un valor por defecto hay que añadir el signo igual = seguido del valor por defecto detrás del parámetro.
ejemplo
fun dividir(numero1:Int, numero2:Int = 2) = numero1 / numero2
fun main(args: Array<String>) {
val division1 = dividir(20, 5)
println("El resultado de la division1 es $division1")
// El resultado de la division1 es 4
val division2 = dividir(20)
println("El resultado de la division2 es $division2")
// El resultado de la division2 es 10
}
En este ejemplo como hemos puesto como valor por defecto para el segundo parámetro 2 si llamamos a la función dividir con un solo parámetro hará la división entre 2.
Si no tuviésemos un valor por defecto la llamada a la función con un solo parámetro produciría un error.
ejemplo
Error:(15, 31) Kotlin: No value passed for parameter 'numero2'
FUNCIONES
Para definir una función tenemos que usar la palabra reservada fun seguida del nombre de la función y entre paréntesis se pueden indicar los parámetros que recibe la función en caso de que los tenga y finalmente tenemos que indicar el tipo de retorno, las llaves {} y dentro pondremos el contenido de nuestra función.
EJEMPLO
fun nombreFuncion(parametro1:Tipo, ..., parametroN:Tipo): TipoRespuesta {
// Cuerpo de la funcion
}
Si la función no devuelve nada el tipo de retorno es Unit, que es el equivalente al void de Java, aunque en estos casos se puede omitir el tipo sin ningún problema.
Sin indicar el tipo de retorno
Ejemplo
un despedirse(nombre: String) {
println("Adios, " + nombre)
}
// Indicando que la función no devuelve nada
EJEMPLO
fun saludar(nombre: String): Unit {
println("Hola, " + nombre)
}
FUNCIONES DE UNA SOLA LÍNEA
PASAR LOS PARÁMETROS DE LA FUNCIÓN POR NOMBRE
la opción de pasar los parámetros desordenados si se indica su nombre para no tener que utilizar la posición en la que están definidos, también se puede utilizar simplemente para que quede claro que es cada parámetro en una llamada a una función sin tener que mirar ni la definición ni la documentación.
Ejemplo
fun restar(numero1:Int, numero2:Int) = numero1 - numero2
fun main(args: Array<String>) {
val resta = restar(numero2 = 20, numero1 = 5)
println("El resultado de la resta es $resta")
// El resultado de la resta es -15
}
Si la función tiene una sola expresión se pueden omitir las llaves {} y en su lugar añadir un = seguido de la expresión. También se puede quitar el tipo de retorno si el compilador lo puede detectar automáticamente.
EJEMPLO
fun sumar(numero1: Int, numero2: Int) = numero1 + numero2
fun mayor(numero1: Int, numero2: Int) = if (numero1 > numero2) numero1 else numero2
fun entreCeroYMax(numero: Int, max: Int) = numero in 0..max
fun main(args: Array<String>) {
val numA = 2
val numB = 5
var suma = sumar(numA, numB)
println("$numA + $numB = $suma")
// 2 + 5 = 7
var numeroMayor = mayor(numA, numB);
println("El numero mas grande de $numA y $numB es $numeroMayor")
// El numero mas grande de 2 y 5 es 5
println("¿$numA esta entre 0 y $numB? ${entreCeroYMax(numA,numB)}")
// ¿2 esta entre 0 y 5? true
}
Para llamar a una función simplemente tenemos que poner su nombre, pasarle los parámetros que necesite y listo. Vamos a ver un ejemplo.
fun sumar(numero1: Int, numero2: Int): Int {
return numero1 + numero2
}
fun esPar(numero: Int): Unit {
if (numero % 2 == 0) {
println("Si, el numero $numero es par")
} else {
println("No, el numero $numero es impar")
}
}
fun main(args: Array<String>) {
val numA = 2
val numB = 5
var resultado = sumar(numA, numB)
println("$numA + $numB = $resultado => ¿Es par? ${esPar(resultado)}")
// No, el numero 7 es impar
// 2 + 5 = 7 => ¿Es par? kotlin.Unit
}
Topic principal
SUS APLICACIONES SON
Deshacer correos enviados
Mayor nivel de personalización
Soporte de Java
Mensajería
Videollamada
Soporte para streaming
Multitarea
Entorno de desarrollo
Navegador web
Google Play
Multi-táctil
Entorno de desarrollo
Soporte para hardware adicional
Bluetooth
Diseño de dispositivo
Sincronización bidireccional de contactos
Topic principal
TIPOS DE PARAMETROS
FUNCIONES CON PARAMETROS DE ENTRADA
las funciones con parámetros de entrada, que son iguales, pero al llamarlas habrá que mandarle las variables que necesite.
PRIMERO DEFINIMOS EL NOMBRE DE LA VARIABLE SEGUIDA DE DOS PUNTOS Y EL TIPO DE VARIABLE (ES OBLIGATORIO)
FUNCIONES CON PARAMETROS DE SALIDA
CON ESTE PARAMETRO PODEMOS DEVOLVER UN RESULTADO DE LA VARIABLE QUE DEFINAMOS (LO MALO ES QUE SOLO PODEMOS DEVOLVER UN PARAMETRO)
AL YA DECLARA LAS VARIABLES CON PARAMETROS DE ENTRADA AL CERRAR LOS PARÉNTESIS PORDREMOS EL TIPO DE VARIABLE QUE QUEREMOS DEVOLVER LUEGO LA FUNCION HARA LO QUE DEBE HACER Y NOSOTROS LA DEVOLVEREMOS CON LA PABRA CLAVE RETURN