Del curso: Domina Swift: Nivel 2

Cómo añadir un nuevo subíndice a un tipo existente - Tutorial de Swift

Del curso: Domina Swift: Nivel 2

Cómo añadir un nuevo subíndice a un tipo existente

En este vídeo vamos a añadir un nuevo subíndice al tipo String; es decir, queremos poder utilizar la nomenclatura miVariableString con corchetes para obtener un valor. Vamos a hacer un subíndice para obtener el lugar del diccionario que ocupa una letra. Por ejemplo, voy a tener una constante miTexto, le voy a asignar un string «nuestro texto es este» y vamos a añadir al tipo String el subscript. Para ello, hacemos extensión de String y decimos subscript, le vamos a indicar el índice de la letra en tipo Entero y vamos a devolver un entero que podrá ser nil. Aquí vamos a tener un array que será el alfabeto. Yo lo voy a pegar para no tener que escribirlo. Y hacemos let i. Y cogemos el índice que vamos a evaluar con el método index. Hacemos self.index y vamos a usar startIndex y, como offset, la n que le hemos indicado a nuestra extensión. Y vamos a retornar el primer índice de alfabeto donde sea igual que la letra en self. Para ello, hacemos return alfabeto.firstIndex of: self[i] .uppercased, ya que nuestro alfabeto está todo en mayúsculas. Esto es un ejemplo. Vamos a ver cómo podemos usar este nuevo subscript que hemos creado. Vamos a hacer miTexto, usamos el primer elemento y nos devuelve la posición de la letra de nuestro texto en el alfabeto. A la derecha vemos los resultados. La N está en la posición 13, la U, en la 20 y la E, en la 4. De esta manera, tenemos un nuevo subíndice para el tipo String. Podemos añadir extensiones de subscript a cualquier tipo.

Contenido