¿Cómo manejar un ArrayList de objetos?

Iniciado por luchi, 3 Septiembre 2016, 02:15 AM

0 Miembros y 1 Visitante están viendo este tema.

luchi

Hola.
Estoy practicando con una ArrayList de objetos. El caso es que me encuentro muy pez con ella. Los arrays los manejo a la perfección, pero no sé cómo tengo que manejar esto. Lo que necesito es, sacar por pantalla las películas que he cambiado a "true" y luego sacar por pantalla la película del año más reciente.
Código (java) [Seleccionar]

import java.util.*;
public class Principal {

public static void main(String[] args) {
// ArrayList
ArrayList <Pelicula> peliculas=new ArrayList<Pelicula>();
peliculas.add(new Pelicula("Los perros de la guerra", "accion", "Jhanoson",2004, 1.6,false,0.6));
peliculas.add(new Pelicula("Wenda", "drama", "Jheposon",2014, 1,false, 0.2));
peliculas.add(new Pelicula("Bruja", "Misterio", "Jheposon",2015, 1,false, 0.5));
peliculas.add(new Pelicula("Peter pan", "aventura", "Timi",2000, 1,false, 0.3));
peliculas.add(new Pelicula("Yolanda", "comedia", "Berton",2006, 1,false, 0.1));
//Utilizo el metodo set para cambiar valores, en éste caso, "true", que para la clase Pelicula es "visto"
peliculas.set(3,new Pelicula("Peter pan", "aventura", "Timi",2000, 1,true, 0.3));
peliculas.set(2,new Pelicula("Bruja", "Misterio", "Jheposon",2015, 1,true, 0.5));

//Intento de sacar por pantalla sólo las peliculas que he cambiado a "true" (no funciona) siempre da false
boolean resultado;
for(int i=0;i<peliculas.size();i++){
resultado=peliculas.contains(1);
if(resultado){
System.out.println(resultado);
}
}



El caso es que con arrays sé acceder a sus índices y ejecutar métodos, pero el ArraYList tiene unos métodos muy concretos y no le saques de ahí o yo no sé cómo sacarlo..
Gracias por cualquier ayuda que puedan prestar.

.rn3w.

array[#indice] eso haces en arreglo
arr.get(#indice) eso haces en arraylist

vease mas en https://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html

ahora respondiendo tu pregunta seria algo asi

for(int i=0;i<peliculas.size();i++){
             if(peliculas.get(i).estado==true){
sop(peliculas.get(i).nombre);
}
}


en el que estado es el valor booleano

luchi

Gracias  :D, ahora los manejo sin problema y terminé lo que tenía que hacer.