Hola, es la primera vez que publico en el foro asi que no estoy seguro si es en esta sección donde se publica o si lo que les voy a preguntar va contra las reglas, si no cumplo algo borren el tema, no hay problema.
Mi duda es esta. Estoy empezando a programar en Java, y tengo que hacer un Cubilete de Dados. El cubilete tiene que almacenar los dados y tirarlos. Cree dos clases, una clase Dado cuyo codigo es:
public class Dado {
private int caras;
private int valor;
public Dado(int caras){
this.caras = caras;
}
public int tirarDado(){
valor = (int)((Math.random()*(caras-1)+1));
return valor;
}
}
y aca la clase Cubilete que hice usando ArrayList:
import java.util.ArrayList;
public class Cubilete {
private ArrayList<Dado> dados = new ArrayList<Dado>();
public Cubilete (int cantDeDados, int cantDeCaras) {
for(int i = 0; i<cantDeDados;i++){
dados.add(new Dado(cantDeCaras));
}
}
public void cantidadDados(){
int cantDados = dados.size();
System.out.println(cantDados);
}
public void tirarDados(){
for (int i = 0; i < dados.size(); i++) {
System.out.println(dados.get(i));
}
}
}
Este programa compila, pero cuando compila me devuelve esto
Dado@21b6d
Dado@56a499
Dado@506411
la cantidad de veces como dados que le ponga al Arraylist. Queria saber porque sucede esto, y si se puede solucionar gracias!