Gracias anahi, eres de las mejores profesoras de Platzi.¿Por qué te nos fuiste? 😦
Conocer a Java como lenguaje de programación
¿Qué es Java?
Versiones de Java y JDK
Las herramientas más usadas de Java
Creando un entorno de desarrollo en Java en Windows
Creando un entorno de desarrollo en Java en Mac
Creando un entorno de desarrollo en Java en Linux
Escribe tu primer Hola Mundo en Java
Etapas de la programación en Java
La JShell de Java
Trabajar con Variables en Java
Variables en Java
Actualizando variables
Convención de Nombres en Java
Técnica de Naming: Camel Case
Tipos de datos numéricos
Tipos de datos char y boolean
Operadores de Asignación, Incremento y Decremento
Operaciones matemáticas
Cast en variables: Estimación y Exactitud
Casteo entre tipos de datos
Archivos .JAR
¡A practicar!
Aplicar condicionales en Java
Sentencia if
Alcance de las variables y Sentencia ELSE
Operadores Lógicos y Expresiones booleanas
Sentencia Switch
Escribir funciones en Java
¿Para qué sirven las funciones?
Implementa Funciones en Java
Java Docs
Javadoc en funciones
Tags Java Docs
Analizar e implementar Ciclos en Java
Bucle do While
Operador Ternario y Bucle While
Bucle For
Break, Continue y Return
Arrays
Declarando Arreglos
Indices y búsqueda de elementos en Arrays
Ciclos For anidados
Continua con el Curso de Programación Orientada a Objetos en Java
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Convierte tus certificados en títulos universitarios en USA
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Anahí Salgado Díaz de la Vega
Los ciclos FOR
nos ayudan a ejecutar una parte de nuestro código todas las veces que sean necesarias hasta que una condición se cumpla, por ejemplo, que un número supere o iguale cierta cantidad.
Eso es exactamente lo que necesitamos para trabajar con índices. En vez de escribir todos los números a mano, vamos a utilizar un ciclo para imprimir el valor de cada posición de nuestros arreglos, incluso si estos son multidimensionales:
// Array de una sola dimensión:
for (int i = 0; i <= 3; i++) {
System.out.println(i);
}
// El resultado será: 0, 1, 2, 3
// Array de dos dimensiones:
for (int row = 0; row < cities.length; row++) {
for (int col = 0; col < cities[row].length; col++) {
System.out.println(cities[row][col]);
}
}
// El resultado será:
// Colombia
// Bogotá
// México
// Guadalajara
// España
// Madrid
El ciclo FOREACH
también nos ayuda a recorrer los elementos de un array posición por posición, solo que no tenemos control sobre el índice, el ciclo se encarga de recorrer todo el array automáticamente:
for (TipoDato elemento : coleccion) {
// Instrucciones
}
Aportes 107
Preguntas 8
Gracias anahi, eres de las mejores profesoras de Platzi.¿Por qué te nos fuiste? 😦
Así podemos evitar que se impriman esos “null” en los arreglos:
for (int i = 0; i < androidVersions.length; i++) {
if (androidVersions[i] == null){
continue;
}
System.out.println(androidVersions[i]);
}
for (String androidVersion: androidVersions) {
if (androidVersion == null){
continue;
}
System.out.println(androidVersion);
}
Como pueden ver, si le indicamos que, si la posición del arreglo está vacía, que se la salte para así pasar a la siguiente.
No me salió con el monkey jaja 😦
Dure bastante tiempo intentando entender como imprimir arreglos en dos dimensiones en Python… Y en una clase aprendí con JAVA! Esto en verdad es genial!!!
🔆 No debes tener muchas anidaciones, el código debe ser lo más lineal posible.
Gran curso, no creí que me iba a gustar Java, pero me sigo quedando con COBOL 😃
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Es broma, ya quisiera saber COBOL, pero me quedo con Javascript
Un ejemplo en C#. Que lindo se ve ordenado
Muy elegante utilizar el foreach en arrays multidimensionales.
Ciclos For anidados
.
Bucle For: una estructura repetitiva para ejecutar un mismo segmento de código una cantidad de veces deseada; debes de saber su valor de inicialización, su condición y su incremento.
Ciclo Foreach: nos ayuda a recorre los elementos de un arreglo, pero no tenemos control sobre el índice.
Aquí les dejo un código con el que podrán rellenar los días de la semana de manera sencilla con JOptionPane!!!
import javax.swing.*;
public class Main {
public static void main(String[] args) {
String[] androidVersions = new String[7];
for (int i = 1; i < androidVersions.length+1; i++) {
androidVersions[i] = JOptionPane.showInputDialog("DIme el dia de la posición "+i);
}
JOptionPane.showMessageDialog(null, androidVersions);
}
}
Me esta explotando la cabeza con todo esto… muy muy confuso para un noobie como yo … pero esperemos que con la practica todo esto se vuelva mas facil … x_____x
También podemos inferir el tipo de variable (usando var) cuando usemos el foreach
for (var pair : cities)
for (var name : pair)
System.out.println(name);
En C# sería:
foreach (var pair in cities)
foreach (var name in pair)
Console.WriteLine(name);
Otro dato es que puedes obviar el uso de las llaves {} si existe una sola instrucción dentro del bucle
Ese **foreach **esta brutal. Me cuesta trabajo dijerirlo. :S
En el caso de que definamos una variable y no le demos ningún valor, por defecto llevarán los siguientes valores:
que buen contenido y explicación acerca del tema de arreglos, esta parte del curso me gusto mucho.
me gusto mucho el manejo de los for en java
En el ultimo ejemplo creo que es más fácil de entender si se hace de la siguiente forma (mencionando country y city en vez de pair y name) ->
for (String[] country : cities) {
for (String city : country) {
System.out.println(city);
}
}
Excelente clase!
Para el segundo lo mejor para mi fue este:
for(int i=0;i<cities.length;i++)
for(int j=0;j<cities[i].length;j++)
System.out.println(cities[i][j]);
que quiere decir con pair ?
Excelente explicación de los Ciclos For anidados
-
Fue muy rápido en esta clase, muchos temas en un solo vídeo.
excelente curso… me sirvio para reforsar
Gracias, muy bien explicado!
En un for normal, tienes el control de los índices, en un foreach no lo tienes.
for(inicializar contador; comparación; incremento){
//instrucciones
}
for(TipoDato elemento : coleccion){
//instrucciones
}
Quiero compartir este ejemplo clásico de ciclos for anidados,
para mandar a imprimir un triángulo de dos formas diferentes
//Triángulo solo con "prints"
System.out.println("*");
System.out.println("**");
System.out.println("***");
System.out.println("****");
System.out.println("*****");
System.out.println("******");
Y la solución con for anidados
//Triángulo con "prints" y ciclos for anidados
for(int i=0; i<=5; i++){
for(int j=0; j<=i; j++){
System.out.print("*");
}
System.out.println();
}```
La forma mas eficiente de hacer el for para mi fue asi. Fíjence que como es de una línea cada sentencia inferior, no fue necesario poner las llaves
for(int i=0;i<androidVersions.length;i++)
if(androidVersions[i]!=null)
System.out.println(androidVersions[i]);```
Gran curso… Muchas Gracias!!!
public class Arrays {
public static void main(String[] args) {
String[] androidVersion = new String[17];
String days[] = new String[7];
String[][] cities = new String[4][2];
int [][][] numbers = new int[2][2][2];
int [][][][] nubers4 = new int[2][2][2][2];
androidVersion[0] = "Apple pie";
androidVersion[1] = "Banana bread";
androidVersion[2] = "cupcake";
androidVersion[3] = "Donut";
cities[0][0] = "Colombia";
cities[0][1] = "Medellin";
cities[1][0] = "Colombia";
cities[1][1] = "Bogota";
cities[2][0] = "Mexico";
cities[2][1] = "Guadalajara";
cities[3][0] = "Mexico";
cities[3][1] = "CDMX";
for (int i = 0;i < androidVersion.length ; i++)
{
System.out.println(androidVersion[i]);
}
for (int i = 0;i < cities.length ; i++)
{
for (int j = 0; j <cities[i].length; j++) {
System.out.printf(cities[i][j]);
if (j== 0) {
System.out.printf(" -------> ");
}
else if (j==1)
{
System.out.println("");
}
}
}
String[][][][] animals = new String[2][3][2][2];
animals[1][0][0][1] = "monkey";
System.out.println(animals[1][0][0][1]);
//foreach
for (String android:androidVersion ) {
System.out.println(android);
}
for (String[] pair:cities ) {
int n = 0;
for (String names:pair ) {
System.out.printf(names);
if (n == 0) {
System.out.printf("--------->");
n = n+1;
}else if (n==1){
System.out.println();
}
}
}
}
}
Muy bueno, nunca habia visto un for each para arreglos jajaja no se me habia ocurrido
Muchas gracias, por todos los conocimientos compartidos y por la forma de llevar el curso
Uf, pensé que iba a ser más fácil el foreach! 😄
También se podría imprimir todo un array completo para evitar los println dentro de for each
int[][][] numerous = new int[3][3][3];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
for (int k = 0; k < 3; k++) {
numerous[i][j][k] = i + j + k;
}
}
}
System.out.println(Arrays.deepToString(numerous));
Output:
[[[0, 1, 2], [1, 2, 3], [2, 3, 4]], [[1, 2, 3], [2, 3, 4], [3, 4, 5]], [[2, 3, 4], [3, 4, 5], [4, 5, 6]]]
Excelente explicación
No se si estoy pecando de ignorante, pero al ser de 4 dimensiones, la capacidad del array es de 24, al no ingresar los valores de tamaño del array, anahi obtuvo solo 4 espacios, aqui a lo que me refiero.
String [][][][] animals = new String[2][3][2][2];
animals[1][0][0][1] = "Monkey";
(2*3)(2*2)=24
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3 ; j++) {
for (int k = 0; k < 2 ; k++) {
for (int l = 0; l < 2 ; l++) {
System.out.println(animals[i][j][k][l]);
}
output :null
null
null
null
null
null
null
null
null
null
null
null
null
Monkey
null
null
null
null
null
null
null
null
null
null
Alguien me podría responder si me estoy equivocando? porfa!
/**
* Descripción: Creación de arrays y recorridos con bucles for i y for each
*/
public class Arrays {
public static void main(String[] args) {
String[] androidVersions = new String[17];
int days[] = new int[7];
String[][] cities = new String[4][2]; //4 * 2 = 8
int [][][] numbers = new int [2][2][2];
int [][][][] numbers4 = new int [2][2][2][2];
androidVersions[0] = "Apple Pie";
androidVersions[1] = "Bannana Bread";
androidVersions[2] = "Cupcake";
androidVersions[3] = "Donut";
for (int i = 0; i < androidVersions.length; i++) {
System.out.println(androidVersions[i]);
}
for (String androidVersion : androidVersions) {
System.out.println(androidVersion);
}
/*
System.out.println(androidVersions[0]);
System.out.println(androidVersions[1]);
System.out.println(androidVersions[2]);
System.out.println(androidVersions[3]);
*/
/*
for (int i = 0; i < days.length; i++) {
System.out.println(days[i]);
}
*/
cities[0][0] = "Colombia";
cities[0][1] = "Medellín";
cities[1][0] = "Colombia";
cities[1][1] = "Bogotá";
cities[2][0] = "México";
cities[2][1] = "Guadalajara";
cities[3][0] = "México";
cities[3][1] = "CDMX";
//Bucle for i anidado
/*for (int i = 0; i < cities.length; i++) {
for (int j = 0; j < cities[i].length; j++) {
System.out.println(cities[i][j]);
}
}*/
//Bucle for each anidado
for (String[] pair : cities) {
for ( String name : pair) {
System.out.println(name);
}
}
/*
System.out.println(cities[0][0]);
System.out.println(cities[0][1]);
System.out.println(cities[1][0]);
System.out.println(cities[1][1]);
System.out.println(cities[2][0]);
System.out.println(cities[2][1]);
System.out.println(cities[3][0]);
System.out.println(cities[3][1]);
*/
String[][][][] animals = new String[2][3][2][2];
animals[1][0][0][1] = "Monkey";
System.out.println();
System.out.println();
System.out.println(animals[1][0][0][1]);
for (int i = 0; i <= 1 ; i++) {
for (int j = 0; j <= 0 ; j++) {
for (int k = 0; k <= 0 ; k++) {
for (int l = 0; l <= 1 ; l++) {
System.out.println(animals[1][0][0][1]);
}
}
}
}
}
}```
Ciclos For anidados
Profe Ann como siempre impecables sus clases y me encanta la manera como nos enseña por primera ves digo que amo esta carrera y es gracias al método de enseñanza bueno también me quede con la duda del monkey en el Foreach le adjunto mis codigos para saber si estoy bien o no!!!
public class Arrays {
public static void main(String[] args) {
// Los arreglos siempre van a ser en plural ya que son coleccion de datos
/**
* Descripción: [] Arreglo de una dimensión
* @param [] Arreglo de una dimension
* */
String[] androidVersions = new String[17];
//Arreglo de una dimension
androidVersions[0] = "Apple Pie";
androidVersions[1] = "Bannana Break";
androidVersions[2] = "Cupcake";
androidVersions[3] = "Donut";
System.out.println(androidVersions[0]);
System.out.println(androidVersions[1]);
System.out.println(androidVersions[2]);
System.out.println(androidVersions[3]);
System.out.println();
String days[] = new String[7];
//Arreglo de una dimension
days[0]= "Lunes";
days[1]= "Martes";
days[2]= "Miercoles";
days[3]= "Jueves";
days[4]= "Viernes";
days[5]= "Sabado";
days[6]= "Domingo";
System.out.println(days[1]);
System.out.println(days[2]);
System.out.println(days[3]);
System.out.println(days[4]);
System.out.println(days[5]);
System.out.println(days[6]);
System.out.println(days[7]);
System.out.println();
/**
* Descripción: [] Arreglo de dos dimensiónes
* @param [][] Arreglo de dos dimensiones
* */
String[][] cities = new String[4][2]; //4*2 estas son matrices que le caben 8 elementos
/*
* +------------------------+
* | Country | City |
* --------------------------
* |Ecuador | Quito |
* |BieloRusia| Grodno |
* |Colombia | Bogotá |
* |Mexico | CDMX |
* +------------------------+
**/
//Arreglo de dos dimensiones
cities[0][0] = "Mexico";
cities[0][1] = "CDMX";
cities[1][0] = "Colombia";
cities[1][1] = "Bogota";
cities[2][0] = "BieloRusia";
cities[2][1] = "Grodno";
cities[3][0] = "Ecuador";
cities[3][1] = "Quito";
System.out.println(cities[0][0]);
System.out.println(cities[0][1]);
System.out.println(cities[1][0]);
System.out.println(cities[1][1]);
System.out.println(cities[2][0]);
System.out.println(cities[2][1]);
System.out.println(cities[3][0]);
System.out.println(cities[3][1]);
System.out.println();
/**
* Descripción: [] Arreglo de tres dimensiónes
* Cuando se define arreglo de 3 elementos es mejor
* llevar a una base de datos.
* Se los maneja mas con calculos numericos matrices o graficos en tres dimensiones
* @param [][][] Arreglo de tres dimensiones
* */
int [][][] numbers = new int[2][2][2];
int [][][][] numbers4 = new int[2][2][2][2];
//Arreglo de 4 dimensiones
//Changuito buscar en que posicion se encuentra
String[][][][] animals = new String[2][3][2][2];
animals[1][0][0][1] = "Monkey";
System.out.println();
System.out.println();
System.out.println(animals [1][0][0][1]);
}
}
public class ArraysCiclosForAnidados {
public static void main(String[] args) {
/**
* Descripción: [] Arreglo de una dimensió
* @param [] Arreglo de una dimension
* */
String[] androidVersions = new String[17];
//Arreglo de una dimension
androidVersions[0] = "Apple Pie";
androidVersions[1] = "Bannana Break";
androidVersions[2] = "Cupcake";
androidVersions[3] = "Donut";
//Bucles de ciclos FOR anidados
//Aqui tenemos con la variante < en enght
for (int i = 0; i < androidVersions.length; i++) {//17
System.out.println(androidVersions[i]);
}
System.out.println();
//Aqui tenemos con la variante -1 en lenght
System.out.println();
for (int i = 0; i <= androidVersions.length-1; i++) {//17
System.out.println(androidVersions[i]);
}
System.out.println();
String days[] = new String[7];
//Arreglo de una dimension
days[0]= "Lunes";
days[1]= "Martes";
days[2]= "Miercoles";
days[3]= "Jueves";
days[4]= "Viernes";
days[5]= "Sabado";
days[6]= "Domingo";
for (int i = 0; i < days.length ; i++) {
System.out.println(days[i]);
}
System.out.println();
int days1[] = new int[7];
for (int i = 0; i <days1.length ; i++) {
System.out.println(days1[i]);
}
System.out.println();
/**
* Descripción: [] Arreglo de dos dimensiónes
* @param [][] Arreglo de dos dimensiones
* */
String[][] cities = new String[4][2]; //4*2 estas son matrices que le caben 8 elementos
/*
* +------------------------+
* | Country | City |
* --------------------------
* |Ecuador | Quito |
* |BieloRusia| Grodno |
* |Colombia | Bogotá |
* |Mexico | CDMX |
* +------------------------+
**/
//Arreglo de dos dimensiones
cities[0][0] = "Mexico";
cities[0][1] = "CDMX";
cities[1][0] = "Colombia";
cities[1][1] = "Bogota";
cities[2][0] = "BieloRusia";
cities[2][1] = "Grodno";
cities[3][0] = "Ecuador";
cities[3][1] = "Quito";
for (int i = 0; i < cities.length; i++) {
for (int j = 0; j < cities[i].length; j++) {
System.out.println(cities[i][j]);
}
}
System.out.println();
/**
* Descripción: [] Arreglo de tres dimensiónes
* Cuando se define arreglo de 3 elementos es mejor
* llevar a una base de datos.
* Se los maneja mas con calculos numericos matrices o graficos en tres dimensiones
* @param [][][] Arreglo de tres dimensiones
* */
int [][][] numbers = new int[2][2][2];
int [][][][] numbers4 = new int[2][2][2][2];
//Arreglo de 4 dimensiones
String[][][][] animals = new String[2][3][2][2];
animals[1][0][0][1] = "Monkey";
System.out.println(animals [1][0][0][1]);
System.out.println();
//Changuito buscar en que posicion se encuentra
for (int i = 0; i <= 1; i++) {
for (int j = 0; j <= 0; j++) {
for (int k = 0; k <= 0; k++) {
for (int l = 0; l <= 1; l++) {
System.out.println(animals[i][j][k][l]);
}
}
}
}
}
}
public class ArraysCiclosForForeach {
public static void main(String[] args) {
/**
* Descripción: [] Arreglo de una dimensió
* @param [] Arreglo de una dimension
* */
String[] androidVersions = new String[17];
//Arreglo de una dimension
androidVersions[0] = "Apple Pie";
androidVersions[1] = "Bannana Break";
androidVersions[2] = "Cupcake";
androidVersions[3] = "Donut";
for (String androidVersion:androidVersions) {
System.out.println(androidVersion);
}
System.out.println();
String days[] = new String[7];
//Arreglo de una dimension
days[0]= "Lunes";
days[1]= "Martes";
days[2]= "Miercoles";
days[3]= "Jueves";
days[4]= "Viernes";
days[5]= "Sabado";
days[6]= "Domingo";
for (String day:days) {
System.out.println(day);
}
System.out.println();
int days1[] = new int[7];
for (int day:days1) {
System.out.println(day);
}
System.out.println();
/**
* Descripción: [] Arreglo de dos dimensiónes
* @param [][] Arreglo de dos dimensiones
* */
String[][] cities = new String[4][2]; //4*2 estas son matrices que le caben 8 elementos
/*
* +------------------------+
* | Country | City |
* --------------------------
* |Ecuador | Quito |
* |BieloRusia| Grodno |
* |Colombia | Bogotá |
* |Mexico | CDMX |
* +------------------------+
**/
//Arreglo de dos dimensiones
cities[0][0] = "Mexico";
cities[0][1] = "CDMX";
cities[1][0] = "Colombia";
cities[1][1] = "Bogota";
cities[2][0] = "BieloRusia";
cities[2][1] = "Grodno";
cities[3][0] = "Ecuador";
cities[3][1] = "Quito";
for (String[] pair :cities) {
for (String name :pair) {
System.out.println(name);
}
}
System.out.println();
/**
* Descripción: [] Arreglo de tres dimensiónes
* Cuando se define arreglo de 3 elementos es mejor
* llevar a una base de datos.
* Se los maneja mas con calculos numericos matrices o graficos en tres dimensiones
* @param [][][] Arreglo de tres dimensiones
* */
//Arreglo de 4 dimensiones
String[][][][] animals = new String[2][3][2][2];
animals[1][0][0][1] = "Monkey";
for (String[][][] i: animals) {
for (String[][] j:i) {
for (String[]k:j) {
for (String l: k) {
System.out.println(l);
}
}
}
}
}
}
Y de igual manera mucha gracias por todo y a los compañeros de clase igual me sacaron todas esas dudas que tenia
excelente clase!
excelente información, muchas gracias.
Ahora tengo claro la forma de utilizar los ciclos Foreach y cómo aprovechar al máximo la anidación de ciclos for para manipular datos en los arreglos, muchas gracias instructora Anahí.
Me fue un poco complicado entender el For anidados debió detallar un poco mas como funciona.
public class PracticaArrays {
public static void main(String[] args) {
String [] androidVersions = new String[17];
System.out.println("Versiones Android\n");
androidVersions[0] = "Apple Pie";
androidVersions[1] = "Banana Bread";
androidVersions[2] = "Cupcake";
androidVersions[3] = "Donut";
for (int i = 0; i <4; i++){
System.out.println("Version "+(i+1)+" "+androidVersions[i]);
}
System.out.println("\n************************\n");
System.out.println("Cities\n");
String [][] cities = new String[4][2];
cities[0][0] = "Colombia";
cities[0][1] = "Medellin";
cities[1][0] = "Colombia";
cities[1][1] = "Bogotá";
cities[2][0] = "Mexico";
cities[2][1] = "Ciudad de Mexico";
cities[3][0] = "Mexico";
cities[3][1] = "Leon";
for (int x = 0; x<4; x++){
for(int y = 0; y<2; y++){
System.out.print(cities[x][y]+"\t\t");
}
System.out.println(" ");
}
}
}
En el for anidado que imprime el arreglo de 4 dimensiones, se imprime 3 nulls antes de monkey?.
super útil el for each
Para los array List
List<String> days = new ArrayList<>();
days.add("Monday");
days.add("Tuesday");
for (int i = 0; i < days.size() ; i++) {
System.out.println(days.get(i));
}
for (String day: days) {
System.out.println(day);
}
androidVersions[0] = "Apple Pie";
androidVersions[1] = "Bannana Bread";
androidVersions[2] = "Cupcake";
androidVersions[3] = "Donut";
for (int i = 0; i < androidVersions.length; i++) {
if (androidVersions[i] == null){
continue;
} else {
System.out.println(androidVersions[i]);
}
}
Para imprimir el array por completo podemos usar:
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
System.out.println(country[i][j]);
}
}
2do metodo
List<String> androidList = new ArrayList<>();
for (int i = 0; i < androidVersions.length; i++) {
String str = androidVersions[i];
if (str != null) {
androidList.add(str);
}
}
androidList.forEach((n) -> System.out.println("2Method -> "+n));
Hace mucho no venia un for aninado
Excelente curso ✔
Siguente curso a tomar “Programación Orientada a Objetos”.
Gracias, el curso fue bastante entretenido y productivo!
Genial!! Me encanto!
[1][0][0][1] arreglo de 4 dimenciones
{
for (int i = 0; i <=3 ; i++) {
for (int j = 0; j <=1 ; j++) {
System.out.println(cities[i][j]);
}
for (int i = 0; i <=3 ; i++) {
for (int j = 0; j <=1 ; j++) {
System.out.println(cities[i][j]);
}
Volví a tomar el curso porque me encantó, gracias Anahi!!
Uy no conocía ese foreach, bastante interesante.
Me han quedado más claros los For anidados, me hubiera servido haber visto este video antes de mi clase de lógica de programación
Eres una gran Docente Anahi!
Excelente explicación de los ciclos foreach thanks!!
excelente curso
Genial.
public class Arrays {
public static void main(String[] args) {
String[] androidVersions = new String[17];
String days[] = new String[7];
String[][] cities = new String[4][2]; //4*2 = 8
int [][][] numbers = new int[2][2][2];
int [][][][] numbers4 = new int [2][2][2][2];
androidVersions[0] = "Apple Pie";
androidVersions[1] = "Bannana Bread";
androidVersions[2] = "Cupcake";
androidVersions[3] = "Donut";
/* for(int i = 0; i <= 3; i++) {
System.out.println(androidVersions[i]);
}*/
for (String androidVersion : androidVersions) {
System.out.println(androidVersion);
}
System.out.println("\n\n");
cities[0][0] = "Colombia";
cities[0][1] = "Medellin";
cities[1][0] = "Colombia";
cities[1][1] = "Bogota";
cities[2][0] = "Mexico";
cities[2][1] = "Guadalajara";
cities[3][0] = "Mexico";
cities[3][1] = "CMDX";
/*for(int j = 0; j < 4; j++){
for(int k =0; k < 2; k++){
System.out.println(cities[j][k]);
}
}*/
for (String[] pair: cities) {
for (String name: pair) {
System.out.println(name);
}
}
System.out.println("\n\n");
String[][][][] animals = new String[2][3][2][2];
animals[1][0][0][1] = "Monkey";
System.out.println(animals[1][0][0][1]);
for (int i = 0; i < 1; i++) {
for (int j = 0; j <= 0; j++) {
for (int k = 0; k <= 0; k++) {
for (int l = 0; l <=1 ; l++) {
System.out.println(animals[i][j][k][l]);
}
}
}
}
}
}```
For each; no lo había visto antes;
/*for (int i=0; i<androidVersions.length; i++){
System.out.println(androidVersions[i]);
}*/
for (String androidVersion : androidVersions) {
System.out.println(androidVersion);
}
Versión foreach:
for (String[] city : cities) {
System.out.println ();
for (String s : city) {
System.out.print (s);
}
}
Una forma más de imprimir tu arreglo
System.out.println("Country:\tCity");
for (String[] city : cities) {
for (int j = 0; j < city.length; j++) {
System.out.print(city[j]);
if (j == 0) {
System.out.print(":\t\t");
} else {
System.out.println();
}
}
}
Muy buena clase. Gracias.
Me habia confundido bastante cuando imprime el array Animals, es porque usa los parametros de la posicion en que está, no de la cantidad de espacio de cada dimensión, como a continuación
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
for (int k = 0; k < 2; k++) {
for (int l = 0; l < 2; l++) {
System.out.println(animals[i][j][k][l]);
}
}
}
}
Así sí muestra al changuito en la posicion que está entre todos los nulls
Como aporte, Si quieren imprimir el array completo
Para un array de 1 dimension :
System.out.println(Arrays.toString(nombre_de_tu_array));
Para un array de 2 dimensiones o mas:
System.out.println(Arrays.deepToString(nombre_de_tu_array));
“Arrays” viene de la libreria “java.util.Arrays” asi que sera nesesario colocar esta linea al comienzo de tu archivo .java
import java.util.Arrays;
Sin terminar de ver el video hice mi propio cilco anidados para el arreglo de paises…
//ACCEDIENDO A VALORES DE UN ARREGLO DE DOS DIMENCIONES.
for (int i = 0; i <= 3; i++) {
for (int j = 0; j <= 1 ; j++) {
System.out.println(paisesYCiudades[i][j]);
}
}
Ahora comprendí la diferencia entre vacío y valor null.
String encuentraElMono[][][][] = new String[2][3][2][2];
encuentraElMono[1][0][0][1] = "Monkey";
for (int fila = 0; fila < encuentraElMono.length; fila++) {
for (int columna = 0; columna < encuentraElMono[fila].length; columna++) {
for (int filaInterna = 0; filaInterna < encuentraElMono[fila][columna].length; filaInterna++) {
for (int columnaInterna = 0; columnaInterna < encuentraElMono[fila][columna][filaInterna].length; columnaInterna++) {
System.out.println(encuentraElMono[fila][columna][filaInterna][columnaInterna]);
}
}
}
}
for (String[][][] i : encuentraElMono) {
for (String[][] j : i) {
for (String[] k : j) {
for (String l : k) {
System.out.println("looking for the monkey with foreach " + l);
}
}
}
}
ACCEDER A UN ARRAY DE 1 DIMENSIÓN UTILIZANDO EL CICLO FOR
_
ACCEDER A UN ARRAY DE 2 DIMENSIONES UTILIZANDO EL CICLO FOR ANIDADO
_
Te amo Anahí Salgado Díaz de la Vega
Jsajajajs la clase anterior hice el aporte sin saber que en esta clase veríamos esto, me quemé el cerebro casi 20 minutos y Anahí lo explicó todo ahorita jajaja.
Array de 2 a más dimensionesn en For anidados
Sin parangón, excelente!!
Excelente explicacion de los for each no los tenia muy claro.
Oh super explicado For Each 😃
Super clase 😃
muy clara la explicación de los ciclos for each
Todo clarísimo. Gracias
Excelente anahi no sabia que podia usar de esa forma el foreach. Graciaas.
que vaina tan dura después de las dos dimensiones jajaja
Excelente clase de for
explicas bien anahi
cities[0][0]="Peru";
cities[0][1]="Mexico";
cities[1][0]="Bolivia";
cities[1][1]="Corea delSur";
for (int i = 0; i <cities.length ; i++) {
for (int j = 0; j <cities[i].length ; j++) {
System.out.println(cities[i][j]);
}
}
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?