68

📱 Arreglos dinámicos con ArrayList en Android Studio [68]

Hasta ahora hemos pedido al humano que ingrese la cantidad de elementos para después proceder a crear el arreglo con la cantidad de elementos, pero los arreglos dinámicos o ArrayList viene a modificar eso y nos permite ir ingresando los elementos sin saber el tamaño del arreglo (Arreglo dinámico). Para probar esto vamos a realizar lo siguiente:

  • Crear una función llamada listaNormal donde:
    • Pedir al humano la lista de elementos a ingresar.
    • Hacer un ciclo de 0 a la cantidad de elementos ingresados.
    • Mostramos la lista
  • Crear una función llamada listaDinamica donde:
    • Crear una lista dinámica
    • Pedir al humano que ingrese un elemento de la lista y después presione “s” para agregar más elementos o “n” para detener
    • Cuando el humano ingrese n detener el pedir datos y muestre la lista.
Arreglos dinámicos con ArrayList en Android Studio

Codigo: https://github.com/programadornovato/Desarrollo-en-Android/commit/fce9f63baa1d71b7cf4fe42bd0e27f8a4d1048b4

import javax.swing.JOptionPane
listaDinamica()
//listaEstatica()
fun listaEstatica(){
    var cantidadElementos=JOptionPane.showInputDialog("Humano cuantos elementos va a tener tu lista").toInt()
    var listaEstatica= arrayOfNulls<Int>(cantidadElementos)
    for (i in 0 until cantidadElementos){
        listaEstatica[i]=JOptionPane.showInputDialog("Humano ingres el elemento ${i+1}").toInt()
    }
    var listaEstaticaString=""
    listaEstatica.forEach {
        listaEstaticaString=listaEstaticaString+it+"\n"
    }
    JOptionPane.showMessageDialog(null,listaEstaticaString)
}
fun listaDinamica(){
    var listaDinamica=ArrayList<Int>()
    var respuesta:Char
    do{
        listaDinamica.add(JOptionPane.showInputDialog("Humano ingresa un elemento").toInt())
        respuesta=JOptionPane.showInputDialog("Humano si quieres seguir ingresando elementos s/n")[0]
    }while (respuesta=='s' || respuesta=='S')
    var listaDinamicaString=""
    listaDinamica.forEach{
        listaDinamicaString=listaDinamicaString+it+"\n"
    }
    JOptionPane.showMessageDialog(null,listaDinamicaString)
}
import javax.swing.JOptionPane

var fil=JOptionPane.showInputDialog("Humano ingresa la cantidad de filas de tu matriz").toInt()
var col=JOptionPane.showInputDialog("Humano ingresa la cantidad de columnas de tu matriz").toInt()
var matriz=Array(fil){IntArray(col)}
for (i in 0 until fil){
    for (j in 0 until col){
        matriz[i][j]=JOptionPane.showInputDialog("Matriz[${i+1}][${j+1}]").toInt()
    }
}
var sumaFil=0
for (i in 0 until fil){
    sumaFil=0
    for (j in 0 until col){
        sumaFil=sumaFil+matriz[i][j]
    }
    println("La suma de la fila ${i+1}=$sumaFil")
}
var sumaCol=0
for (j in 0 until col){
    sumaCol=0
    for (i in 0 until fil){
        sumaCol=sumaCol+matriz[i][j]
    }
    println("La suma de la columna ${j+1}=$sumaCol")
}

🎦 [Curso] Java Netbeans Completo☕: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTT-qEHGqZH3fkBgXH4GOTF
🎦 [CURSO] PYTHON PARA PRINCIPIANTES🐍: https://www.youtube.com/playlist?list=PLCTD_CpMeEKRppvi86Dy8CPYZ8-XzN2qu
🎦 Lista de reproducción de este curso: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTT9pb9J-89j1SPtqHzU7sF
🎦 [Curso] Kotlin de 0 a 100: https://www.youtube.com/playlist?list=PLCTD_CpMeEKSjzbsW_zmVNz23GyOVsdbS
🎦 [Curso] Java Netbeans Completo☕: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTT-qEHGqZH3fkBgXH4GOTF

🔗 Facebook: https://facebook.com/ProgramadorNovatoOficial
🔗 Twitter: https://twitter.com/programadornova
🔗 Linkedin: https://www.linkedin.com/in/programadornovato/
🔗 Instagram: https://www.instagram.com/programadornovato/
🔗 Pagina oficial: https://www.programadornovato.com
🔗 Gracias por apoyar este canal: https://www.patreon.com/programadornovato

Anterior tutorial Siguiente tutorial

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información básica sobre protección de datos Ver más

  • Responsable: Eugenio Chaparro.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio. El Titular ha contratado los servicios de alojamiento web a digitalocean.com que actúa como encargado de tratamiento.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad