Ver si elemento existe en arreglo de Ruby o buscar su índice usando index e include

Comprobar si elemento existe en arreglo o buscar índice en Ruby

En este post veremos dos cosas con arreglos y Ruby: cómo saber si un elemento existe en un arreglo, y cómo buscar u obtener el índice de un elemento dentro de un arreglo.

Saber si un elemento existe es útil cuando estamos haciendo una lista de valores que no se repiten, y buscar el índice funciona para cuando necesitamos hacer algo con un elemento en caso de que no exista.

Ver si elemento existe en arreglo de Ruby o buscar su índice usando index e include
Ver si elemento existe en arreglo de Ruby o buscar su índice usando index e include

Veremos dos funciones con Ruby y arreglos: index e include.

Obtener índice o index de elemento en un arreglo

Para obtener la posición de un elemento dentro de un arreglo en Ruby, se usa a index. Su uso es:

indice = arreglo.index(busqueda)

En caso de que exista, se devolverá un número indicando la posición (la cual comienza desde 0) y en caso de que no, se regresa nil. Aquí un ejemplo:

arreglo = ["Ruby", "Perl", "C", "Go", "Rust"]
# index devuelve el índice (desde 0) o nil si no existe
busqueda = "Perl"
indice = arreglo.index(busqueda)
if indice
	puts "El elemento #{busqueda} está en el índice #{indice}"
else
	puts "No existe el elemento #{busqueda}"
end

Saber si elemento existe en arreglo con Ruby

Esta comprobación se podría hacer con el método index, comprobando si el valor de retorno es nil; pero estamos en Ruby y algunas cosas pueden ser elegantes así que usamos al método include.

Su uso es:

existe = arreglo.include?(busqueda)

Aquí un ejemplo:

arreglo = ["Ruby", "Perl", "C", "Go", "Rust"]
# Si solamente se quiere comprobar si existe, usar include
busqueda = "C++"
if arreglo.include?(busqueda)
	puts "El arreglo SÍ tiene el elemento #{busqueda}"
else
	puts "El arreglo no incluye el elemento #{busqueda}"
end

En otras palabras, eso devuelve un booleano que podemos evaluar en un if u otro lugar dependiendo de las necesidades.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

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