ARRAYS en Kotlin - Parte I: ----------------------------------------- 1:02 - ¿Qué es un Array? Estructura de datos que contiene una colección de valores del mismo tipo. 2:00 - ¿Para qué sirven? Almacenar valores que, normalmente, tienen alguna relación entre sí. 2:53 - Sintaxis: Ejemplo1 - val mesesDelAnio : Array = arrayOf("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre") Ejemplo2 - val mi_matriz = arrayOf(6, 24, 69, -13, 93) //
Saludos desde Venezuela, estoy siguiendo este curso a partir de esta semana, me parece muy bueno. Cuando dice que Kotlin no permite que se guarde en un array colecciones de valores de diferentes tipo probé para comprobarlo he hice lo siguiente: val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda", 1, 3.1416) for (x in cars) { println(x) } } Revisé este array con valores String, Int y Double y no hubo problemas. Me gustaría saber a que se refiere en la aclaración que usted hizo, gracias por su dedicación.
En Kotlin, los arrays son tipados, lo que significa que cuando creas un array, todos los elementos deben ser del mismo tipo o compatibles con el tipo declarado del array. Sin embargo, esto no significa que no puedas tener un array que contenga elementos de diferentes tipos, pero el tipo del array debe ser lo suficientemente general para abarcar esos tipos. Por ejemplo, si defines un array de tipo Any, que es la superclase de todos los tipos en Kotlin, puedes almacenar elementos de diferentes tipos en el mismo array: val mixedArray: Array = arrayOf(1, "Kotlin", true) En este caso, mixedArray puede contener un Int, un String, y un Boolean, porque todos ellos son subtipos de Any. Sin embargo, si defines un array con un tipo más específico, como Array, no podrás almacenar otros tipos de datos en él: val intArray: Array = arrayOf(1, 2, 3) // intArray[0] = "Hello" // Esto causaría un error de compilación El código que has proporcionado funciona sin problemas porque en Kotlin, el compilador automáticamente infiere (y he aquí la clave: la inferencia de tipos) el tipo de array como Array cuando incluyes elementos de diferentes tipos en la misma colección. Esto es posible porque Any es la superclase de todos los tipos en Kotlin, y por lo tanto, puede contener elementos de cualquier tipo. ¡Saludos!
Gracias por el video, profe. Interesante eso de no permitirse arreglos de varios tipos... No me extraña, sabiendo que es fuertemente tipado. pero, es algo que de muchos lenguajes no mucho me agrada. Pero igual siempre hay más de una forma de hacer las cosas.
yo soy fiel por la pobreza =(, jajajajaja no no cierto, apenas encontre su canal señor profesor, me ha gustado estaba viendo el de java pero mejor me metí de lleno a lo de kotlin, le agradezco mucho sus aportes, toda su trayectoria, todos sus cursos gratuitos!
Hola Juan!! Un placer seguir tus cursos como siempre. Una duda: En el min. 16:20 del video le aplicas un nuevo valor a miArray[2]=7 , pero previamente, miArray lo habías declarado como un val y no como un var. Dado que val es una "constante", ¿Cómo es posible que te permita modificar su valor? Muchas gracias desde un seguidor de Canarias.
En Kotlin, la palabra clave val no significa exactamente "constante" en el sentido de que el valor del objeto no pueda cambiar. Val indica que la referencia al objeto es inmutable, es decir, una vez que has asignado un valor a esa variable, no puedes cambiar la referencia para que apunte a un objeto diferente. Sin embargo, esto no significa que el objeto al que apunta sea inmutable. En el caso de un array (o cualquier otro tipo de objeto mutable), puedes modificar el contenido del objeto, aunque la referencia en sí sea inmutable. Val garantiza que la referencia a un objeto no cambie, pero no garantiza que el objeto en sí sea inmutable. Un array es un tipo de objeto mutable, por lo que puedes cambiar sus elementos incluso si la referencia al array está declarada como val. ¡Saludos!
Maestro, siempre es un gusto repasar estos conceptos en tus cursos, tengo una inquietud, he estado aprendiendo c++ quisiera saber si en este curso veremos algo del uso de este en android?
Los espacios importan? Si declaro: var arreglo:Array=arrayOf("Saludo", "desde", "un", "arreglo") me manda el error: Expecting a '>', solo se arregla escribiendo un espacio entre el igual
Arrays en kotlin fun main (){ val miarray= arrayof(5,1,5,7) val miarray2=Array(5){0} println(miarray.jointostring())------> para ver todas los valores de la array }
ARRAYS en Kotlin - Parte I:
-----------------------------------------
1:02 - ¿Qué es un Array?
Estructura de datos que contiene una colección de valores del mismo tipo.
2:00 - ¿Para qué sirven?
Almacenar valores que, normalmente, tienen alguna relación entre sí.
2:53 - Sintaxis:
Ejemplo1 - val mesesDelAnio : Array = arrayOf("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre")
Ejemplo2 - val mi_matriz = arrayOf(6, 24, 69, -13, 93) //
Muchas gracias por continuar el curso
Mi Juan gracias por su dedicación
Gracias por los videos Gracias
Muchas Gracias Profe, te sigo desde tus inicios, agradecido aprendi con vos Python, SQL, saludos desde Bolivia, un abrazo sos el mejor
Excelentes videos me han servido muchísimo , mil gracias!
Muchas gracias Juan!!!
Saludos desde Venezuela, estoy siguiendo este curso a partir de esta semana, me parece muy bueno. Cuando dice que Kotlin no permite que se guarde en un array colecciones de valores de diferentes tipo probé para comprobarlo he hice lo siguiente: val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda", 1, 3.1416)
for (x in cars) {
println(x)
}
}
Revisé este array con valores String, Int y Double y no hubo problemas.
Me gustaría saber a que se refiere en la aclaración que usted hizo, gracias por su dedicación.
En Kotlin, los arrays son tipados, lo que significa que cuando creas un array, todos los elementos deben ser del mismo tipo o compatibles con el tipo declarado del array. Sin embargo, esto no significa que no puedas tener un array que contenga elementos de diferentes tipos, pero el tipo del array debe ser lo suficientemente general para abarcar esos tipos.
Por ejemplo, si defines un array de tipo Any, que es la superclase de todos los tipos en Kotlin, puedes almacenar elementos de diferentes tipos en el mismo array:
val mixedArray: Array = arrayOf(1, "Kotlin", true)
En este caso, mixedArray puede contener un Int, un String, y un Boolean, porque todos ellos son subtipos de Any.
Sin embargo, si defines un array con un tipo más específico, como Array, no podrás almacenar otros tipos de datos en él:
val intArray: Array = arrayOf(1, 2, 3)
// intArray[0] = "Hello" // Esto causaría un error de compilación
El código que has proporcionado funciona sin problemas porque en Kotlin, el compilador automáticamente infiere (y he aquí la clave: la inferencia de tipos) el tipo de array como Array cuando incluyes elementos de diferentes tipos en la misma colección. Esto es posible porque Any es la superclase de todos los tipos en Kotlin, y por lo tanto, puede contener elementos de cualquier tipo. ¡Saludos!
minuto 12:10
Gracias por el video, profe.
Interesante eso de no permitirse arreglos de varios tipos... No me extraña, sabiendo que es fuertemente tipado. pero, es algo que de muchos lenguajes no mucho me agrada.
Pero igual siempre hay más de una forma de hacer las cosas.
Gracias por el aporte!
yo soy fiel por la pobreza =(, jajajajaja no no cierto, apenas encontre su canal señor profesor, me ha gustado estaba viendo el de java pero mejor me metí de lleno a lo de kotlin, le agradezco mucho sus aportes, toda su trayectoria, todos sus cursos gratuitos!
Muy buena explicacion muchas gracias
Hola Juan!! Un placer seguir tus cursos como siempre. Una duda: En el min. 16:20 del video le aplicas un nuevo valor a miArray[2]=7 , pero previamente, miArray lo habías declarado como un val y no como un var. Dado que val es una "constante", ¿Cómo es posible que te permita modificar su valor? Muchas gracias desde un seguidor de Canarias.
En Kotlin, la palabra clave val no significa exactamente "constante" en el sentido de que el valor del objeto no pueda cambiar. Val indica que la referencia al objeto es inmutable, es decir, una vez que has asignado un valor a esa variable, no puedes cambiar la referencia para que apunte a un objeto diferente.
Sin embargo, esto no significa que el objeto al que apunta sea inmutable. En el caso de un array (o cualquier otro tipo de objeto mutable), puedes modificar el contenido del objeto, aunque la referencia en sí sea inmutable.
Val garantiza que la referencia a un objeto no cambie, pero no garantiza que el objeto en sí sea inmutable.
Un array es un tipo de objeto mutable, por lo que puedes cambiar sus elementos incluso si la referencia al array está declarada como val.
¡Saludos!
me encanta como explicas y el curso en si, espero y puedas subir contenido un poco mas frecuentes aunque entiendo que tienes el tiempo a contra reloj
1:44 -Estaba aplicando lo explicado y note que si puedo generar arrays de varios tipos de datos, ejemplo: val miArray= arrayOf("hola",2,true,2.5)
Gracias profe!
¡Gracias!
eres bravo
Visto!! :)
Maestro, siempre es un gusto repasar estos conceptos en tus cursos, tengo una inquietud, he estado aprendiendo c++ quisiera saber si en este curso veremos algo del uso de este en android?
Los espacios importan? Si declaro: var arreglo:Array=arrayOf("Saludo", "desde", "un", "arreglo") me manda el error: Expecting a '>', solo se arregla escribiendo un espacio entre el igual
Arrays en kotlin
fun main (){
val miarray= arrayof(5,1,5,7)
val miarray2=Array(5){0}
println(miarray.jointostring())------> para ver todas los valores de la array
}
Bueno, en Kotlin también se puede usar el ArrayList de Java