Manipular objetos

3 respostas
tiago.moraes

Olá gente,

Queria saber como eu posso manipular um objeto da seguinte forma:

  • Tenho algumas classes chamadas: Jogador, Pino, Base e Casa.

  • Durante o jogo, um objeto do tipo Pino precisa mudar de localização, ou seja, de Base para Casa.

  • O responsável por essa mudança, seria um objeto do tipo Jogador e é preciso guardar o id (identificação) deste objeto pino (já que serão instanciados 4 pinos).

  • A questão é, quando o usuário escolher o pino a ser movimentado (através de seu id), como encontrá-lo e como dizer que ele está em Base, ou em Casa?

agradeço a todos,
Tiago.

3 Respostas

ViniGodoy

Você vai ter que inserir métodos de busca nessas classes.

if (base.contemPino(pino1)) {
   //O pino está na base
} else {
   //O pino está na casa
}
tiago.moraes

Valeu ViniGodoy,

Consegui uma solução para essa busca e encontrei outra dúvida.
Estou fazendo alguns testes com o HashMap da segunte forma:
Minha intenção é utilizar somente o último valor colocado em map, assim pensei nesta solução:

public static void main(String[] args) {
	Map<Integer, Integer> map = new HashMap<Integer, Integer>();
	map.put(new Integer(0), new Integer(10));
	map.put(new Integer(1), new Integer(20));
	map.put(new Integer(2), new Integer(30));
	map.put(new Integer(3), new Integer(40));
		
	for (Entry<Integer, Integer> entry : map.entrySet()) {
		Integer a = new Integer(null);
		Integer b = new Integer(null);
			
		a = entry.getValue();
		b = entry.getKey();
			
		System.out.println(a);
		System.out.println(b);
	}
}
O problema é que ele cai nesta exceção
throw new NumberFormatException("null");

Alguém saberia como solucionar este caso?

Brigadão,
Tiago.

nel

Oi,

como tu quer que ela faça a conversão de um null para Integer, fazendo new Integer?
API do Integer: http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html

Ou passa um primitivo no construtor (0,1…) ou uma String.
Abraços.

Criado 6 de novembro de 2011
Ultima resposta 7 de nov. de 2011
Respostas 3
Participantes 3