Ir al contenido principal

Java Tip 12: Uso de for each

En está ocasión veremos como recorrer colecciones (arrays, listas, etc.) usando el clásico for y el "for each".

¿Qué es un array?
 Una estructura de datos con elementos del mismo tipo y cuyo tamaño es definido. En Java, el índice de un array inicia en cero.
final int TAM = 10;
//Definimos un arreglo con un tamaño de 10
int[] arreglo = new int[TAM];

int numeros[] = {11,22,33,44,55,66,77};
int tamanyo = numeros.length;

char[] caracteres = {'A','B','C'};
caracteres[0] = 'X';
caracteres[1] = 'Y';
caracteres[2] = 'Z';



try{
   caracteres[3] ='\u0043';
}catch(Exception ex){
  System.err.println("Tratas de acceder a un índice que no existe: "+ex.toString());
}


for(int n = 0 ; n < numeros.length; n++){
  System.out.printf("%d\n",numeros[n]);
}

¿Qué es una lista?
Una colección de elementos del mismo tipo cuyo tamaño es variable.
import java.util.ArrayList;

//...

ArrayList<String> listaNombres = new ArrayList<>();

listaNombres.add(0, new String("Thomas"));
listaNombres.add(1, "Horacio");
listaNombres.add(2, "Juliana");

Nota: La diferencia principal entre un arreglo y una lista es que lista puede crecer; un arreglo tiene un tamaño definido.


Es importante saber que con un bucle for tenemos mayor control que con un do-while y un while.

//Clásico for
for(int i=0; i < listaNombres.size();i++){
  System.out.println(listaNombres.get(i));
}

//For Each
for(String nombre : listaNombres){
  System.out.println(nombre);
}

Además con una lista podemos hacer algo como esto:
//Recorrer una lista con un 'for each'
listaNombres.forEach(System.out::println);

También podemos hacer ciclos infinitos:

int infinito = 0;

for(;;){
  System.out.println(infinito);
  infinito++;
}

for(true)
   System.out.println("Hola");

Con Java tenemos un mundo por aprender. En posteriores post veremos más sobre estructuras de datos y sentencias de control.

Comentarios

Entradas populares de este blog

Java Tip 1: Importaciones por default

Tip 1 : Todas las clases del paquete java.lang se importan por defecto. Podríamos hacer algo como esto: import java.lang.System ; import java.lang.String ; import java.lang.Boolean ; import java.lang.Integer ; import java.lang.Short ; import java.lang.StringBuilder ; import java.lang.StringBuffer ; O cosas (aberrantes) como: //Traernos todas las clases del paquete java.lang import java.lang.* ; Sin embargo, no es necesario. Repitamos esto como un mantra: Todas las clases del paquete  java.lang  se importan por defecto, no es necesario escribir de más .

Java Tip 28: hilos virtuales en Java

Con Java 21 entra un nuevo concepto: hilos virtuales java ( Java Virtual Threads ).  La cual es una nueva característica que nos permite crear miles o millones de hilos (tareas en paralelo). Los cuales se diferencian de los hilos comunes ( Platform Threads ) al no depender del sistema operativo , puesto que son virtuales. De estos se encargará la JVM. Al usar hilos virtuales ahorramos recursos del procesador y de memoria del sistema , sin importar si estamos creando y/o usando miles o millones. Los hilos virtuales son ideales para aplicaciones modernas donde se requiere esperar y recibir respuestas o acceder a bases de datos remotas, entre otras cosas. Además no impide usar los hilos comunes que dependen del sistema operativo. Observemos un ejemplo de uso de hilos virtuales. VirtualThreadsDemo.java package com.comunidad.demo; public class VirtualThreadsDemo { public static void main (String [] args) throws InterruptedException { // Crear un Virtual Th...

Java Tip 20: JDBC (2da parte)

Continuamos con esta serie sobre JDBC . Como dijimos la vez anterior JDBC( Java Database Connectivity ) es el estándar de conectividad de bases de datos de Java y proporciona un mecanismo para que los programas Java se conecten a las bases de datos. En este post veremos ejemplos de su uso. Requisitos: Tener nociones de Java.  Tener nociones de SQL (usaremos H2). Tener nociones de Maven. Creando una aplicación JDBC Crearemos una sencilla aplicación que se conecte a una BD H2 (ver  tutorial ). Pasos: Crearemos una tabla a la que llamaremos Cursos. La cual tendrá los siguientes campos: id, titulo, materia, instructor, fecha y hora. Crear la aplicación Java usando Maven. Crearemos instrucciones SQL para consultar la información, ingresar nuevos cursos, actualizar y eliminar registros. Ejecutar la aplicación con Maven. 1. Creamos la tabla con sus seis campos (agregaremos los datos con la aplicación Java): CREATE OR REPLACE TABLE CURSOS( id bigint ...