elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Duda con ArrayList<>
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda con ArrayList<>  (Leído 2,836 veces)
RADIACTIVO

Desconectado Desconectado

Mensajes: 20


syscall


Ver Perfil
Duda con ArrayList<>
« en: 9 Diciembre 2012, 13:47 pm »

Buenas, estoy programando en java el juego de las burbujas que tu disparas una burbuja de un color y si la encajas con otras 2 de su mismo color se destruyen, creo que todos lo conocemos.
Tengo dos clases. Una clase principal y otra que se llama Position con solo 2 atributos, int row int col, ya que mi tablero por ahora no es mas que una matriz de chars. En uno de los metodos tengo que realizar el calculo de la trayectoria de la bola y meterlos dentro un ArrayList  :rolleyes:. Sabria resolverlo de otras formas y se me ha ocurrido alguna como pasar los numeros como int dentro de una array normal y ya esta, pero me gustaria que me ayudasen si pueden y me explicasen porque no consigo meter una posicion en mi ArrayList. Se que el codigo es muy largo asi que no se molesten en entenderlo si no quieren. Voy a indicar donde estan los errores, y por favor no pongan solo un codigo, si pueden dejen un poco de teoria para que lo entienda  :-(. Muchas gracias de antemano y Saludos!

Código:
//THIS METHOD JUST STORES IN THE ARRAYLIST THE POSITIONS OF THE SHOOT(complete/just how to add to the arraylist)
public static ArrayList<Position> getTrajectoryToTop(char [][] board, Position shootPosition, int DIR){



[b]ArrayList<Position> list = new ArrayList() ;
//THIS PART IS IN CHARGED OF (DEPENDING ON THE DIRECTION) FULLFILL ALL THE TRAJECTORY OF THE BUBBLE
Position  c = new Position();[/b]


int fic=0;

int desplazamiento = 0; //This will indicate if it is going to the right or to the left

if((DIR<=4 && DIR>0) || DIR==5){
fic=1;
}else if((DIR<0 && DIR>=-4) || DIR==-5){
fic=-1;
}

int fic_counter = fic;
         

//ALL THESE LOOPS ARE FOR GETTING THE POSISITIONS INTO THE -ARRAYLIST- AND TO KNOW WHEN IT HAS TO STOP
switch(DIR){
//THIS IS FOR STRIGHT SHOOT
case  0: for(int i=13; i>=1; i--){
if(board[i][4]!=' '){
break;
}

                        list.add(i,4); //THIS SHOULD BE A POSTION BUT HOW?¿?¿?¿
} break;

default :{

//THIS IFS ARE FOR GETTING IF THE TRAJECTORY IS GOING TO THE LEFT OR THE RIGHT
   if(DIR<4){
    desplazamiento=-1;      //Because it moves to the left
   }else if(DIR<4){
    desplazamiento=1;
   }
   
   
   int initial_col = 4 + (DIR);
       for(int i=13; i>=1; i--){
        if(initial_col>0 && initial_col<8){
        if(desplazamiento==1){
        if(board[i+1][initial_col+1]!=' '){
        break;}
        }else if(desplazamiento==-1){
        if(board[i+1][initial_col-1]!=' '){
        break;
        }
        }

       
        }else if(initial_col==0 || initial_col==8){
        if(board[i+1][initial_col]!=' '){
        break;
        }
        fic_counter=fic_counter*(-1);
        desplazamiento=desplazamiento*(-1);
        }
        initial_col=initial_col+fic_counter;
        [b]list.add(i,initial_col); }[/b]
       }
}


return list;}

Espero que el codigo este claro, he dejado comentarios y si hay algo que no esta convencion y se fijan por favor diganlo que si no no aprendo :)


« Última modificación: 9 Diciembre 2012, 13:50 pm por RADIACTIVO » En línea

La ignorancia es la noche de la mente, solo que sin estrellas ni luna que alumbre.
Legnak

Desconectado Desconectado

Mensajes: 61


("Programador");


Ver Perfil
Re: Duda con ArrayList<>
« Respuesta #1 en: 9 Diciembre 2012, 21:15 pm »

te refieres a esta línea, cierto?

Código
  1. list.add(i,4); //THIS SHOULD BE A POSTION BUT HOW?¿?¿?¿

sería así:
Código
  1. list.set(índice, valor)


En línea

RADIACTIVO

Desconectado Desconectado

Mensajes: 20


syscall


Ver Perfil
Re: Duda con ArrayList<>
« Respuesta #2 en: 10 Diciembre 2012, 00:53 am »

Hola Legnak, muchas gracias por contestar  :) y si esa es la linea, lo que pasa es que yo he creado una clase Position, la clase es tal que asi (va sin constructor adrede)
Código:
public class Position {

public int row;
public int col;

}
y quiero meter dos valores que corresponden a una posicion, y esa es la duda.
Se haria como has puesto :huh:
Muchas gracias otra vez! Saludos
En línea

La ignorancia es la noche de la mente, solo que sin estrellas ni luna que alumbre.
RADIACTIVO

Desconectado Desconectado

Mensajes: 20


syscall


Ver Perfil
Re: Duda con ArrayList<>
« Respuesta #3 en: 10 Diciembre 2012, 21:08 pm »

Ya lo he rersuelto, pueden cerrar el tema
En línea

La ignorancia es la noche de la mente, solo que sin estrellas ni luna que alumbre.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
arraylist character to arraylist String
Java
mapers 4 5,545 Último mensaje 1 Noviembre 2011, 15:24 pm
por adastra
Duda con arrayList y HashMap
Java
Hartigan 3 6,825 Último mensaje 23 Noviembre 2011, 01:48 am
por adastra
Meter ArrayList en Otro ArrayList
Java
Tuplado 1 3,293 Último mensaje 5 Enero 2014, 22:10 pm
por ~ Yoya ~
duda con ArrayList
Java
m@o_614 2 1,909 Último mensaje 22 Noviembre 2014, 15:38 pm
por MNicolas
Duda con arraylist
Java
Baal_30 5 2,653 Último mensaje 9 Abril 2015, 00:06 am
por Usuario Invitado
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines