Anda di halaman 1dari 4

package com.lynda.

javatraining;
import java.util.ArrayList;
import com.lynda.olivepress.olives.Olive;
public class StringsInSwitch {
public static void main(String[] args) throws Exception {
Olive o1 = new Olive("Kalamata", 0x000000);
Olive o2 = new Olive("Picholine", 0x00FF00);
Olive o3 = new Olive("Ligurio", 0x000000);
ArrayList<Olive> list = new ArrayList<>();
list.add(o1);
list.add(o2);
list.add(o3);
//Contenido mo
System.out.println(list.get(1));
}
}

Anlisis
Olive o1, Olive o2, Olive o3 Son
Objetos (instancias) de la Clase Olive.
ArrayList<Olive> list = new
ArrayList<>();
Declaracion e iniciacion de la variable
list de tipo ArrayList con proyeccin a
que guarde elementos (objetos) de
clase Olive (<Olive>).
list.add(o1);
list.add(o2);
list.add(o3);
El mtodo add(), propio de los tipo
Arraylist, agrega los elementos o1
(objeto Olive), o2 (objeto Olive) y o3
(objeto Olive) a la variable ArrayList
list.Anlisis

El mtodo get(index), propio de los tipo ArrayList, devuelve el elemento (objeto)


en la posicin especificada (con el index) dentro de la lista.

Uso de System.out.println()
Para imprimir el objeto de tipo ArrayList list se usa
System.out.println(list);
Para y devolver lo siguiente:

La pregunta es Siempre devolvera el resultado con el mismo formato que


ahora?
Comunmente el resultado que deberia ser mostrado en la consola seria el siguiente:

Pero esto podra variar de acuerdo a lo siguiente:

Cuando uno cre la clase Olive (el archivo Olive.class) se le escribi:


Dos propiedades, campos o atributos
o oliveName de Tipo String
o color de Tipo long inicializado con valor 0x000000
Tres Constructores
Un metodo toString();
Cuando uno imprime el ArrayList list, esta imprimiendo los objetos que tiene
dentro de si, osea imprime a los objetos o1, o2, o3; cada objeto llama al metodo
toString(), metodo que es propio de la librera Object (de objetos) en Java, que
devuelve una representacion textual de un objeto.

La salida comn es debera ser:

Array de objetos aplicado el mtodo toString () por defecto.

Pero al nosotros definir en la clase Olive el mtodo toString (), lo que estamos
haciendo es cambiar el formato de salida de lo que usualmente devuelve dicho
mtodo
public String toString() {
return "name: " + this.oliveName + ": " + "color: " +
this.color;
}
Porcin de Cdigo Fuente de la Clase Olive que muestra la creacin (o mejor dicho, modificacin) del mtodo
toString ().

Es por eso que ahora cuando imprimamos el ArrayList list la salida ser esta

Array de objetos aplicado el mtodo toString () creado en la Clase Olive

Definicin de toString(), mtodo de la clase Object (para objetos) de la API


de Java

As es como est definido el mtodo toString() en la clase Object de la API de


Java

Cdigo Fuente de la Clase Olive


public class Olive {
public String oliveName;
public long color = 0x000000;
public Olive() {
}
public Olive(String oliveName) {
this.oliveName = oliveName;
}
public Olive(String oliveName, long color) {
this(oliveName);
this.color = color;
}
public String toString() {
return "name: " + this.oliveName + ": " + "color: " +
this.color;
}
}

Anda mungkin juga menyukai