Estrutura de Dados ( Mapa )

1 resposta
L

Boa Noite, gostaria de pedir a ajuda de vocês, pois estou estudando para uma prova de java da Faculdade e o professor passou um Exercício para estudarmos que é o seguinte:

Realizar o Cadastramento de futebol ( vou resumir pra chegar aonde estou com dificuldade)

o exercício esta quase pronto, mas falta a parte de MAPAS, pois preciso que o método " exibir " que esta dentro da classe " Confederacao " imprima um relatório da seguinte maneira:

Confederação Brasileira de Futebol
Goleiro - 10 : R$50.000,00
Lateral - 10 : R$20.000,00
Zagueiro - 10 : R$30.000,00
Volante - 10 : R$10.000,00
Armador - 10 : R$30.000,00
Atacante - 10 : R$30.000,00

Goleiro -> o usuário digita a posição do jogador que está sendo cadastrado.
10 - > numero de jogadores nessa posição.
R$50.000,00 -> calculo da média salarial dos jogadores daquela posição.

A minha classe "Confederacao" que tem os métodos para adicionar e exibir é a seguinte:

package Negocio;

import Interfaces.*;

public class Confederacao implements ICadastravel, IExibido {

	private String pais;
	private int anofund;
	public Contato contato = new Contato();

	public Contato getContato() {
		return contato;
	}

	public void setContato(Contato contato) {
		this.contato = contato;
	}

	public String getPais() {
		return pais;
	}

	public void setPais(String pais) {
		this.pais = pais;
	}

	public int getAnofund() {
		return anofund;
	}

	public void setAnofund(int anofund) {
		this.anofund = anofund;
	}

    public void incluirJogador(Jogador jogador) {     //Método para inserir jogadores no MAPA.
	}

	public void exibir(Jogador jogador) {            // Exibe o Relatório descrito no post.
	}

}

Tentei fazer o mapa mais não consegui, por isso peço a ajuda de vocês, o resto do exercício está todo certo, mas essa parte de mapa que esta empacando;

Obg pela atenção.

1 Resposta

drsmachado

Primeiramente, tenho que perguntar, você entende o conceito de mapa, em java?
O mapa é representado pela interface Map, que permite uso de generics para Key e Value, tanto que quando você declara um objeto da interface Map, você verá que ela é mais ou menos assim

Map<K, V> mapa;

Em termos gerais, um mapa permite que eu associe um valor qualquer a uma chave. Cada chave possui apenas um valor e nunca vai se repetir. Cada valor pode se repetir por mais de uma chave.
A chave pode ser qualquer objeto e o valor pode ser qualquer objeto. Isso significa que eu posso criar um mapa assim

Map<Integer, Long> mapa = new HashMap<Integer, Long>();
mapa.put(1, 1L);
mapa.put(2, 10L);

Ou

List<String> lista = new ArrayList<String>();
Set<Object> set = new HashSet<Object>();
Map<List<String>, Set<Object>> mapa = new LinkedHashMap<List<String>, Set<Object>>();

Quando este último será utilizado, não faço nem ideia, mas é possível.

No teu caso, você precisa de um mapa em que a chave seja representada por algo que seja único, dentro dos teus requisitos (creio que a String que representa a posição) e o valor será o objeto que conterá a quantidade de jogadores e a média salarial.

Criado 9 de dezembro de 2012
Ultima resposta 10 de dez. de 2012
Respostas 1
Participantes 2